xref: /openbmc/linux/arch/arm/mach-omap2/Kconfig (revision 5bd8e16d)
1config ARCH_OMAP
2	bool
3
4config ARCH_OMAP2
5	bool "TI OMAP2"
6	depends on ARCH_MULTI_V6
7	select ARCH_OMAP2PLUS
8	select CPU_V6
9	select MULTI_IRQ_HANDLER
10	select SOC_HAS_OMAP2_SDRC
11
12config ARCH_OMAP3
13	bool "TI OMAP3"
14	depends on ARCH_MULTI_V7
15	select ARCH_OMAP2PLUS
16	select ARCH_HAS_OPP
17	select ARM_CPU_SUSPEND if PM
18	select CPU_V7
19	select MULTI_IRQ_HANDLER
20	select OMAP_INTERCONNECT
21	select PM_OPP if PM
22	select PM_RUNTIME if CPU_IDLE
23	select SOC_HAS_OMAP2_SDRC
24	select USB_ARCH_HAS_EHCI if USB_SUPPORT
25
26config ARCH_OMAP4
27	bool "TI OMAP4"
28	depends on ARCH_MULTI_V7
29	select ARCH_OMAP2PLUS
30	select ARCH_HAS_OPP
31	select ARCH_NEEDS_CPU_IDLE_COUPLED if SMP
32	select ARM_CPU_SUSPEND if PM
33	select ARM_ERRATA_720789
34	select ARM_GIC
35	select CACHE_L2X0
36	select CPU_V7
37	select HAVE_ARM_SCU if SMP
38	select HAVE_ARM_TWD if SMP
39	select HAVE_SMP
40	select OMAP_INTERCONNECT
41	select PL310_ERRATA_588369
42	select PL310_ERRATA_727915
43	select PM_OPP if PM
44	select PM_RUNTIME if CPU_IDLE
45	select USB_ARCH_HAS_EHCI if USB_SUPPORT
46	select ARM_ERRATA_754322
47	select ARM_ERRATA_775420
48
49config SOC_OMAP5
50	bool "TI OMAP5"
51	depends on ARCH_MULTI_V7
52	select ARCH_OMAP2PLUS
53	select ARM_CPU_SUSPEND if PM
54	select ARM_GIC
55	select CPU_V7
56	select HAVE_ARM_SCU if SMP
57	select HAVE_ARM_TWD if LOCAL_TIMERS
58	select HAVE_SMP
59	select HAVE_ARM_ARCH_TIMER
60	select ARM_ERRATA_798181 if SMP
61
62config SOC_AM33XX
63	bool "TI AM33XX"
64	depends on ARCH_MULTI_V7
65	select ARCH_OMAP2PLUS
66	select ARM_CPU_SUSPEND if PM
67	select CPU_V7
68	select MULTI_IRQ_HANDLER
69
70config SOC_AM43XX
71	bool "TI AM43x"
72	depends on ARCH_MULTI_V7
73	select CPU_V7
74	select ARCH_OMAP2PLUS
75	select MULTI_IRQ_HANDLER
76	select ARM_GIC
77	select MACH_OMAP_GENERIC
78
79config ARCH_OMAP2PLUS
80	bool
81	select ARCH_HAS_BANDGAP
82	select ARCH_HAS_CPUFREQ
83	select ARCH_HAS_HOLES_MEMORYMODEL
84	select ARCH_OMAP
85	select ARCH_REQUIRE_GPIOLIB
86	select CLKSRC_MMIO
87	select COMMON_CLK
88	select GENERIC_CLOCKEVENTS
89	select GENERIC_IRQ_CHIP
90	select OMAP_DM_TIMER
91	select PINCTRL
92	select PROC_DEVICETREE if PROC_FS
93	select SOC_BUS
94	select SPARSE_IRQ
95	select TI_PRIV_EDMA
96	select USE_OF
97	help
98	  Systems based on OMAP2, OMAP3, OMAP4 or OMAP5
99
100
101if ARCH_OMAP2PLUS
102
103menu "TI OMAP2/3/4 Specific Features"
104
105config ARCH_OMAP2PLUS_TYPICAL
106	bool "Typical OMAP configuration"
107	default y
108	select AEABI
109	select HIGHMEM
110	select I2C
111	select I2C_OMAP
112	select MENELAUS if ARCH_OMAP2
113	select NEON if CPU_V7
114	select PM_RUNTIME
115	select REGULATOR
116	select TWL4030_CORE if ARCH_OMAP3 || ARCH_OMAP4
117	select TWL4030_POWER if ARCH_OMAP3 || ARCH_OMAP4
118	select VFP
119	help
120	  Compile a kernel suitable for booting most boards
121
122config SOC_HAS_OMAP2_SDRC
123	bool "OMAP2 SDRAM Controller support"
124
125config SOC_HAS_REALTIME_COUNTER
126	bool "Real time free running counter"
127	depends on SOC_OMAP5 || SOC_DRA7XX
128	default y
129
130config SOC_DRA7XX
131	bool "TI DRA7XX"
132	select ARM_ARCH_TIMER
133	select CPU_V7
134	select ARM_GIC
135	select HAVE_SMP
136	select COMMON_CLK
137
138comment "OMAP Core Type"
139	depends on ARCH_OMAP2
140
141config SOC_OMAP2420
142	bool "OMAP2420 support"
143	depends on ARCH_OMAP2
144	default y
145	select OMAP_DM_TIMER
146	select SOC_HAS_OMAP2_SDRC
147
148config SOC_OMAP2430
149	bool "OMAP2430 support"
150	depends on ARCH_OMAP2
151	default y
152	select SOC_HAS_OMAP2_SDRC
153
154config SOC_OMAP3430
155	bool "OMAP3430 support"
156	depends on ARCH_OMAP3
157	default y
158	select SOC_HAS_OMAP2_SDRC
159
160config SOC_TI81XX
161	bool "TI81XX support"
162	depends on ARCH_OMAP3
163	default y
164
165config OMAP_PACKAGE_ZAF
166       bool
167
168config OMAP_PACKAGE_ZAC
169       bool
170
171config OMAP_PACKAGE_CBC
172       bool
173
174config OMAP_PACKAGE_CBB
175       bool
176
177config OMAP_PACKAGE_CUS
178       bool
179
180config OMAP_PACKAGE_CBP
181       bool
182
183comment "OMAP Board Type"
184	depends on ARCH_OMAP2PLUS
185
186config MACH_OMAP_GENERIC
187	bool "Generic OMAP2+ board"
188	depends on ARCH_OMAP2PLUS
189	default y
190	help
191	  Support for generic TI OMAP2+ boards using Flattened Device Tree.
192	  More information at Documentation/devicetree
193
194config MACH_OMAP2_TUSB6010
195	bool
196	depends on ARCH_OMAP2 && SOC_OMAP2420
197	default y if MACH_NOKIA_N8X0
198
199config MACH_OMAP_H4
200	bool "OMAP 2420 H4 board"
201	depends on SOC_OMAP2420
202	default y
203	select OMAP_DEBUG_DEVICES
204	select OMAP_PACKAGE_ZAF
205
206config MACH_OMAP_2430SDP
207	bool "OMAP 2430 SDP board"
208	depends on SOC_OMAP2430
209	default y
210	select OMAP_PACKAGE_ZAC
211
212config MACH_OMAP3_BEAGLE
213	bool "OMAP3 BEAGLE board"
214	depends on ARCH_OMAP3
215	default y
216	select OMAP_PACKAGE_CBB
217
218config MACH_DEVKIT8000
219	bool "DEVKIT8000 board"
220	depends on ARCH_OMAP3
221	default y
222	select OMAP_PACKAGE_CUS
223
224config MACH_OMAP_LDP
225	bool "OMAP3 LDP board"
226	depends on ARCH_OMAP3
227	default y
228	select OMAP_PACKAGE_CBB
229
230config MACH_OMAP3530_LV_SOM
231	bool "OMAP3 Logic 3530 LV SOM board"
232	depends on ARCH_OMAP3
233	default y
234	select OMAP_PACKAGE_CBB
235	help
236	 Support for the LogicPD OMAP3530 SOM Development kit
237	 for full description please see the products webpage at
238	 http://www.logicpd.com/products/development-kits/texas-instruments-zoom%E2%84%A2-omap35x-development-kit
239
240config MACH_OMAP3_TORPEDO
241	bool "OMAP3 Logic 35x Torpedo board"
242	depends on ARCH_OMAP3
243	default y
244	select OMAP_PACKAGE_CBB
245	help
246	 Support for the LogicPD OMAP35x Torpedo Development kit
247	 for full description please see the products webpage at
248	 http://www.logicpd.com/products/development-kits/zoom-omap35x-torpedo-development-kit
249
250config MACH_OVERO
251	bool "Gumstix Overo board"
252	depends on ARCH_OMAP3
253	default y
254	select OMAP_PACKAGE_CBB
255
256config MACH_OMAP3EVM
257	bool "OMAP 3530 EVM board"
258	depends on ARCH_OMAP3
259	default y
260	select OMAP_PACKAGE_CBB
261
262config MACH_OMAP3517EVM
263	bool "OMAP3517/ AM3517 EVM board"
264	depends on ARCH_OMAP3
265	default y
266	select OMAP_PACKAGE_CBB
267
268config MACH_CRANEBOARD
269	bool "AM3517/05 CRANE board"
270	depends on ARCH_OMAP3
271	select OMAP_PACKAGE_CBB
272
273config MACH_OMAP3_PANDORA
274	bool "OMAP3 Pandora"
275	depends on ARCH_OMAP3
276	default y
277	select OMAP_PACKAGE_CBB
278	select REGULATOR_FIXED_VOLTAGE if REGULATOR
279
280config MACH_TOUCHBOOK
281	bool "OMAP3 Touch Book"
282	depends on ARCH_OMAP3
283	default y
284	select OMAP_PACKAGE_CBB
285
286config MACH_OMAP_3430SDP
287	bool "OMAP 3430 SDP board"
288	depends on ARCH_OMAP3
289	default y
290	select OMAP_PACKAGE_CBB
291
292config MACH_NOKIA_N800
293       bool
294
295config MACH_NOKIA_N810
296       bool
297
298config MACH_NOKIA_N810_WIMAX
299       bool
300
301config MACH_NOKIA_N8X0
302	bool "Nokia N800/N810"
303	depends on SOC_OMAP2420
304	default y
305	select MACH_NOKIA_N800
306	select MACH_NOKIA_N810
307	select MACH_NOKIA_N810_WIMAX
308	select OMAP_PACKAGE_ZAC
309
310config MACH_NOKIA_RM680
311	bool "Nokia N950 (RM-680) / N9 (RM-696) phones"
312	depends on ARCH_OMAP3
313	default y
314	select MACH_NOKIA_RM696
315	select OMAP_PACKAGE_CBB
316
317config MACH_NOKIA_RX51
318	bool "Nokia N900 (RX-51) phone"
319	depends on ARCH_OMAP3
320	default y
321	select OMAP_PACKAGE_CBB
322
323config MACH_OMAP_ZOOM2
324	bool "OMAP3 Zoom2 board"
325	depends on ARCH_OMAP3
326	default y
327	select OMAP_PACKAGE_CBB
328	select REGULATOR_FIXED_VOLTAGE if REGULATOR
329
330config MACH_OMAP_ZOOM3
331	bool "OMAP3630 Zoom3 board"
332	depends on ARCH_OMAP3
333	default y
334	select OMAP_PACKAGE_CBP
335	select REGULATOR_FIXED_VOLTAGE if REGULATOR
336
337config MACH_CM_T35
338	bool "CompuLab CM-T35/CM-T3730 modules"
339	depends on ARCH_OMAP3
340	default y
341	select MACH_CM_T3730
342	select OMAP_PACKAGE_CUS
343
344config MACH_CM_T3517
345	bool "CompuLab CM-T3517 module"
346	depends on ARCH_OMAP3
347	default y
348	select OMAP_PACKAGE_CBB
349
350config MACH_CM_T3730
351       bool
352
353config MACH_IGEP0020
354	bool "IGEP v2 board"
355	depends on ARCH_OMAP3
356	default y
357	select OMAP_PACKAGE_CBB
358
359config MACH_IGEP0030
360	bool "IGEP OMAP3 module"
361	depends on ARCH_OMAP3
362	default y
363	select MACH_IGEP0020
364	select OMAP_PACKAGE_CBB
365
366config MACH_SBC3530
367	bool "OMAP3 SBC STALKER board"
368	depends on ARCH_OMAP3
369	default y
370	select OMAP_PACKAGE_CUS
371
372config MACH_OMAP_3630SDP
373	bool "OMAP3630 SDP board"
374	depends on ARCH_OMAP3
375	default y
376	select OMAP_PACKAGE_CBP
377
378config MACH_TI8168EVM
379	bool "TI8168 Evaluation Module"
380	depends on SOC_TI81XX
381	default y
382
383config MACH_TI8148EVM
384	bool "TI8148 Evaluation Module"
385	depends on SOC_TI81XX
386	default y
387
388config OMAP3_EMU
389	bool "OMAP3 debugging peripherals"
390	depends on ARCH_OMAP3
391	select ARM_AMBA
392	select OC_ETM
393	help
394	  Say Y here to enable debugging hardware of omap3
395
396config OMAP3_SDRC_AC_TIMING
397	bool "Enable SDRC AC timing register changes"
398	depends on ARCH_OMAP3
399	default n
400	help
401	  If you know that none of your system initiators will attempt to
402	  access SDRAM during CORE DVFS, select Y here.  This should boost
403	  SDRAM performance at lower CORE OPPs.  There are relatively few
404	  users who will wish to say yes at this point - almost everyone will
405	  wish to say no.  Selecting yes without understanding what is
406	  going on could result in system crashes;
407
408config OMAP4_ERRATA_I688
409	bool "OMAP4 errata: Async Bridge Corruption"
410	depends on (ARCH_OMAP4 || SOC_OMAP5) && !ARCH_MULTIPLATFORM
411	select ARCH_HAS_BARRIERS
412	help
413	  If a data is stalled inside asynchronous bridge because of back
414	  pressure, it may be accepted multiple times, creating pointer
415	  misalignment that will corrupt next transfers on that data path
416	  until next reset of the system (No recovery procedure once the
417	  issue is hit, the path remains consistently broken). Async bridge
418	  can be found on path between MPU to EMIF and MPU to L3 interconnect.
419	  This situation can happen only when the idle is initiated by a
420	  Master Request Disconnection (which is trigged by software when
421	  executing WFI on CPU).
422	  The work-around for this errata needs all the initiators connected
423	  through async bridge must ensure that data path is properly drained
424	  before issuing WFI. This condition will be met if one Strongly ordered
425	  access is performed to the target right before executing the WFI.
426	  In MPU case, L3 T2ASYNC FIFO and DDR T2ASYNC FIFO needs to be drained.
427	  IO barrier ensure that there is no synchronisation loss on initiators
428	  operating on both interconnect port simultaneously.
429endmenu
430
431endif
432