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 HAVE_IDE
13	select PINCTRL_SINGLE
14
15if ARCH_DAVINCI
16
17config ARCH_DAVINCI_DMx
18	bool
19
20comment "DaVinci Core Type"
21
22config ARCH_DAVINCI_DM644x
23	bool "DaVinci 644x based system"
24	select DAVINCI_AINTC
25	select ARCH_DAVINCI_DMx
26
27config ARCH_DAVINCI_DM355
28	bool "DaVinci 355 based system"
29	select DAVINCI_AINTC
30	select ARCH_DAVINCI_DMx
31
32config ARCH_DAVINCI_DM646x
33	bool "DaVinci 646x based system"
34	select DAVINCI_AINTC
35	select ARCH_DAVINCI_DMx
36
37config ARCH_DAVINCI_DA830
38	bool "DA830/OMAP-L137/AM17x based system"
39	depends on !ARCH_DAVINCI_DMx || (AUTO_ZRELADDR && ARM_PATCH_PHYS_VIRT)
40	select ARCH_DAVINCI_DA8XX
41	# needed on silicon revs 1.0, 1.1:
42	select CPU_DCACHE_WRITETHROUGH if !CPU_DCACHE_DISABLE
43	select DAVINCI_CP_INTC
44
45config ARCH_DAVINCI_DA850
46	bool "DA850/OMAP-L138/AM18x based system"
47	depends on !ARCH_DAVINCI_DMx || (AUTO_ZRELADDR && ARM_PATCH_PHYS_VIRT)
48	select ARCH_DAVINCI_DA8XX
49	select DAVINCI_CP_INTC
50
51config ARCH_DAVINCI_DA8XX
52	bool
53
54config ARCH_DAVINCI_DM365
55	bool "DaVinci 365 based system"
56	select DAVINCI_AINTC
57	select ARCH_DAVINCI_DMx
58
59comment "DaVinci Board Type"
60
61config MACH_DA8XX_DT
62	bool "Support DA8XX platforms using device tree"
63	default y
64	depends on ARCH_DAVINCI_DA850
65	select PINCTRL
66	select TIMER_OF
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	  http://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	  Information of this board may be found at
212	  http://www.hawkboard.org/
213
214config DAVINCI_MUX
215	bool "DAVINCI multiplexing support"
216	depends on ARCH_DAVINCI
217	default y
218	help
219	  Pin multiplexing support for DAVINCI boards. If your bootloader
220	  sets the multiplexing correctly, say N. Otherwise, or if unsure,
221	  say Y.
222
223config DAVINCI_MUX_DEBUG
224	bool "Multiplexing debug output"
225	depends on DAVINCI_MUX
226	help
227	  Makes the multiplexing functions print out a lot of debug info.
228	  This is useful if you want to find out the correct values of the
229	  multiplexing registers.
230
231config DAVINCI_MUX_WARNINGS
232	bool "Warn about pins the bootloader didn't set up"
233	depends on DAVINCI_MUX
234	help
235	  Choose Y here to warn whenever driver initialization logic needs
236	  to change the pin multiplexing setup. When there are no warnings
237	  printed, it's safe to deselect DAVINCI_MUX for your product.
238
239endif
240