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