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