1# SPDX-License-Identifier: GPL-2.0
2
3menuconfig ARCH_DAVINCI
4	bool "TI DaVinci"
5	depends on ARCH_MULTI_V5
6	select DAVINCI_TIMER
7	select ZONE_DMA
8	select ARCH_HAS_HOLES_MEMORYMODEL
9	select PM_GENERIC_DOMAINS if PM
10	select PM_GENERIC_DOMAINS_OF if PM && OF
11	select REGMAP_MMIO
12	select RESET_CONTROLLER
13	select HAVE_IDE
14	select PINCTRL_SINGLE
15
16if ARCH_DAVINCI
17
18config ARCH_DAVINCI_DMx
19	bool
20
21comment "DaVinci Core Type"
22
23config ARCH_DAVINCI_DM644x
24	bool "DaVinci 644x based system"
25	select DAVINCI_AINTC
26	select ARCH_DAVINCI_DMx
27
28config ARCH_DAVINCI_DM355
29	bool "DaVinci 355 based system"
30	select DAVINCI_AINTC
31	select ARCH_DAVINCI_DMx
32
33config ARCH_DAVINCI_DM646x
34	bool "DaVinci 646x based system"
35	select DAVINCI_AINTC
36	select ARCH_DAVINCI_DMx
37
38config ARCH_DAVINCI_DA830
39	bool "DA830/OMAP-L137/AM17x based system"
40	depends on !ARCH_DAVINCI_DMx || (AUTO_ZRELADDR && ARM_PATCH_PHYS_VIRT)
41	select ARCH_DAVINCI_DA8XX
42	# needed on silicon revs 1.0, 1.1:
43	select CPU_DCACHE_WRITETHROUGH if !CPU_DCACHE_DISABLE
44	select DAVINCI_CP_INTC
45
46config ARCH_DAVINCI_DA850
47	bool "DA850/OMAP-L138/AM18x based system"
48	depends on !ARCH_DAVINCI_DMx || (AUTO_ZRELADDR && ARM_PATCH_PHYS_VIRT)
49	select ARCH_DAVINCI_DA8XX
50	select DAVINCI_CP_INTC
51
52config ARCH_DAVINCI_DA8XX
53	bool
54
55config ARCH_DAVINCI_DM365
56	bool "DaVinci 365 based system"
57	select DAVINCI_AINTC
58	select ARCH_DAVINCI_DMx
59
60comment "DaVinci Board Type"
61
62config MACH_DA8XX_DT
63	bool "Support DA8XX platforms using device tree"
64	default y
65	depends on ARCH_DAVINCI_DA850
66	select PINCTRL
67	help
68	  Say y here to include support for TI DaVinci DA850 based using
69	  Flattened Device Tree. More information at Documentation/devicetree
70
71config MACH_DAVINCI_EVM
72	bool "TI DM644x EVM"
73	default ARCH_DAVINCI_DM644x
74	depends on ARCH_DAVINCI_DM644x
75	help
76	  Configure this option to specify the whether the board used
77	  for development is a DM644x EVM
78
79config MACH_SFFSDR
80	bool "Lyrtech SFFSDR"
81	depends on ARCH_DAVINCI_DM644x
82	help
83	  Say Y here to select the Lyrtech Small Form Factor
84	  Software Defined Radio (SFFSDR) board.
85
86config MACH_NEUROS_OSD2
87	bool "Neuros OSD2 Open Television Set Top Box"
88	depends on ARCH_DAVINCI_DM644x
89	help
90	  Configure this option to specify the whether the board used
91	  for development is a Neuros OSD2 Open Set Top Box.
92
93config MACH_DAVINCI_DM355_EVM
94	bool "TI DM355 EVM"
95	default ARCH_DAVINCI_DM355
96	depends on ARCH_DAVINCI_DM355
97	help
98	  Configure this option to specify the whether the board used
99	  for development is a DM355 EVM
100
101config MACH_DM355_LEOPARD
102	bool "DM355 Leopard board"
103	depends on ARCH_DAVINCI_DM355
104	help
105	  Configure this option to specify the whether the board used
106	  for development is a DM355 Leopard board.
107
108config MACH_DAVINCI_DM6467_EVM
109	bool "TI DM6467 EVM"
110	default ARCH_DAVINCI_DM646x
111	depends on ARCH_DAVINCI_DM646x
112	select MACH_DAVINCI_DM6467TEVM
113	help
114	  Configure this option to specify the whether the board used
115	  for development is a DM6467 EVM
116
117config MACH_DAVINCI_DM6467TEVM
118	bool
119
120config MACH_DAVINCI_DM365_EVM
121	bool "TI DM365 EVM"
122	default ARCH_DAVINCI_DM365
123	depends on ARCH_DAVINCI_DM365
124	help
125	  Configure this option to specify whether the board used
126	  for development is a DM365 EVM
127
128config MACH_DAVINCI_DA830_EVM
129	bool "TI DA830/OMAP-L137/AM17x Reference Platform"
130	default ARCH_DAVINCI_DA830
131	depends on ARCH_DAVINCI_DA830
132	select GPIO_PCF857X if I2C
133	help
134	  Say Y here to select the TI DA830/OMAP-L137/AM17x Evaluation Module.
135
136choice
137	prompt "Select DA830/OMAP-L137/AM17x UI board peripheral"
138	depends on MACH_DAVINCI_DA830_EVM
139	help
140	  The presence of UI card on the DA830/OMAP-L137/AM17x EVM is
141	  detected automatically based on successful probe of the I2C
142	  based GPIO expander on that board. This option selected in this
143	  menu has an effect only in case of a successful UI card detection.
144
145config DA830_UI_LCD
146	bool "LCD"
147	help
148	  Say Y here to use the LCD as a framebuffer or simple character
149	  display.
150
151config DA830_UI_NAND
152	bool "NAND flash"
153	help
154	  Say Y here to use the NAND flash. Do not forget to setup
155	  the switch correctly.
156endchoice
157
158config MACH_DAVINCI_DA850_EVM
159	bool "TI DA850/OMAP-L138/AM18x Reference Platform"
160	default ARCH_DAVINCI_DA850
161	depends on ARCH_DAVINCI_DA850
162	help
163	  Say Y here to select the TI DA850/OMAP-L138/AM18x Evaluation Module.
164
165choice
166	prompt "Select peripherals connected to expander on UI board"
167	depends on MACH_DAVINCI_DA850_EVM
168	help
169	  The presence of User Interface (UI) card on the DA850/OMAP-L138/AM18x
170	  EVM is detected automatically based on successful probe of the I2C
171	  based GPIO expander on that card. This option selected in this
172	  menu has an effect only in case of a successful UI card detection.
173
174config DA850_UI_NONE
175	bool "No peripheral is enabled"
176	help
177	  Say Y if you do not want to enable any of the peripherals connected
178	  to TCA6416 expander on DA850/OMAP-L138/AM18x EVM UI card
179
180config DA850_UI_RMII
181	bool "RMII Ethernet PHY"
182	help
183	  Say Y if you want to use the RMII PHY on the DA850/OMAP-L138/AM18x
184	  EVM. This PHY is found on the UI daughter card that is supplied with
185	  the EVM.
186	  NOTE: Please take care while choosing this option, MII PHY will
187	  not be functional if RMII mode is selected.
188
189config DA850_UI_SD_VIDEO_PORT
190	bool "Video Port Interface"
191	help
192	  Say Y if you want to use Video Port Interface (VPIF) on the
193	  DA850/OMAP-L138 EVM. The Video decoders/encoders are found on the
194	  UI daughter card that is supplied with the EVM.
195
196endchoice
197
198config MACH_MITYOMAPL138
199	bool "Critical Link MityDSP-L138/MityARM-1808 SoM"
200	depends on ARCH_DAVINCI_DA850
201	help
202	  Say Y here to select the Critical Link MityDSP-L138/MityARM-1808
203	  System on Module.  Information on this SoM may be found at
204	  https://www.mitydsp.com
205
206config MACH_OMAPL138_HAWKBOARD
207	bool "TI AM1808 / OMAPL-138 Hawkboard platform"
208	depends on ARCH_DAVINCI_DA850
209	help
210	  Say Y here to select the TI AM1808 / OMAPL-138 Hawkboard platform .
211
212config DAVINCI_MUX
213	bool "DAVINCI multiplexing support"
214	depends on ARCH_DAVINCI
215	default y
216	help
217	  Pin multiplexing support for DAVINCI boards. If your bootloader
218	  sets the multiplexing correctly, say N. Otherwise, or if unsure,
219	  say Y.
220
221config DAVINCI_MUX_DEBUG
222	bool "Multiplexing debug output"
223	depends on DAVINCI_MUX
224	help
225	  Makes the multiplexing functions print out a lot of debug info.
226	  This is useful if you want to find out the correct values of the
227	  multiplexing registers.
228
229config DAVINCI_MUX_WARNINGS
230	bool "Warn about pins the bootloader didn't set up"
231	depends on DAVINCI_MUX
232	help
233	  Choose Y here to warn whenever driver initialization logic needs
234	  to change the pin multiplexing setup. When there are no warnings
235	  printed, it's safe to deselect DAVINCI_MUX for your product.
236
237endif
238