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