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