Merge branch 'acpi-cleanup'
[firefly-linux-kernel-4.4.55.git] / arch / arm / mach-omap2 / Kconfig
1 config ARCH_OMAP
2         bool
3
4 config 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
13 config 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
28 config 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
53 config 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         select ARM_ERRATA_798181 if SMP
66
67 config SOC_AM33XX
68         bool "AM33XX support"
69         depends on ARCH_MULTI_V7
70         select ARCH_OMAP2PLUS
71         select ARM_CPU_SUSPEND if PM
72         select CPU_V7
73         select MULTI_IRQ_HANDLER
74         select COMMON_CLK
75
76 config SOC_AM43XX
77         bool "TI AM43x"
78         depends on ARCH_MULTI_V7
79         select CPU_V7
80         select ARCH_OMAP2PLUS
81         select MULTI_IRQ_HANDLER
82         select ARM_GIC
83         select COMMON_CLK
84         select MACH_OMAP_GENERIC
85
86 config ARCH_OMAP2PLUS
87         bool
88         select ARCH_HAS_BANDGAP
89         select ARCH_HAS_CPUFREQ
90         select ARCH_HAS_HOLES_MEMORYMODEL
91         select ARCH_OMAP
92         select ARCH_REQUIRE_GPIOLIB
93         select CLKDEV_LOOKUP
94         select CLKSRC_MMIO
95         select GENERIC_CLOCKEVENTS
96         select GENERIC_IRQ_CHIP
97         select HAVE_CLK
98         select OMAP_DM_TIMER
99         select PINCTRL
100         select PROC_DEVICETREE if PROC_FS
101         select SOC_BUS
102         select SPARSE_IRQ
103         select TI_PRIV_EDMA
104         select USE_OF
105         help
106           Systems based on OMAP2, OMAP3, OMAP4 or OMAP5
107
108
109 if ARCH_OMAP2PLUS
110
111 menu "TI OMAP2/3/4 Specific Features"
112
113 config ARCH_OMAP2PLUS_TYPICAL
114         bool "Typical OMAP configuration"
115         default y
116         select AEABI
117         select HIGHMEM
118         select I2C
119         select I2C_OMAP
120         select MENELAUS if ARCH_OMAP2
121         select NEON if ARCH_OMAP3 || ARCH_OMAP4 || SOC_OMAP5
122         select PM_RUNTIME
123         select REGULATOR
124         select TWL4030_CORE if ARCH_OMAP3 || ARCH_OMAP4
125         select TWL4030_POWER if ARCH_OMAP3 || ARCH_OMAP4
126         select VFP
127         help
128           Compile a kernel suitable for booting most boards
129
130 config SOC_HAS_OMAP2_SDRC
131         bool "OMAP2 SDRAM Controller support"
132
133 config SOC_HAS_REALTIME_COUNTER
134         bool "Real time free running counter"
135         depends on SOC_OMAP5
136         default y
137
138 comment "OMAP Core Type"
139         depends on ARCH_OMAP2
140
141 config 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
148 config SOC_OMAP2430
149         bool "OMAP2430 support"
150         depends on ARCH_OMAP2
151         default y
152         select SOC_HAS_OMAP2_SDRC
153
154 config SOC_OMAP3430
155         bool "OMAP3430 support"
156         depends on ARCH_OMAP3
157         default y
158         select SOC_HAS_OMAP2_SDRC
159
160 config SOC_TI81XX
161         bool "TI81XX support"
162         depends on ARCH_OMAP3
163         default y
164
165 config OMAP_PACKAGE_ZAF
166        bool
167
168 config OMAP_PACKAGE_ZAC
169        bool
170
171 config OMAP_PACKAGE_CBC
172        bool
173
174 config OMAP_PACKAGE_CBB
175        bool
176
177 config OMAP_PACKAGE_CUS
178        bool
179
180 config OMAP_PACKAGE_CBP
181        bool
182
183 comment "OMAP Board Type"
184         depends on ARCH_OMAP2PLUS
185
186 config 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
194 config MACH_OMAP2_TUSB6010
195         bool
196         depends on ARCH_OMAP2 && SOC_OMAP2420
197         default y if MACH_NOKIA_N8X0
198
199 config 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
206 config MACH_OMAP_2430SDP
207         bool "OMAP 2430 SDP board"
208         depends on SOC_OMAP2430
209         default y
210         select OMAP_PACKAGE_ZAC
211
212 config MACH_OMAP3_BEAGLE
213         bool "OMAP3 BEAGLE board"
214         depends on ARCH_OMAP3
215         default y
216         select OMAP_PACKAGE_CBB
217
218 config MACH_DEVKIT8000
219         bool "DEVKIT8000 board"
220         depends on ARCH_OMAP3
221         default y
222         select OMAP_PACKAGE_CUS
223
224 config MACH_OMAP_LDP
225         bool "OMAP3 LDP board"
226         depends on ARCH_OMAP3
227         default y
228         select OMAP_PACKAGE_CBB
229
230 config 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
240 config 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
250 config MACH_OVERO
251         bool "Gumstix Overo board"
252         depends on ARCH_OMAP3
253         default y
254         select OMAP_PACKAGE_CBB
255
256 config MACH_OMAP3EVM
257         bool "OMAP 3530 EVM board"
258         depends on ARCH_OMAP3
259         default y
260         select OMAP_PACKAGE_CBB
261
262 config MACH_OMAP3517EVM
263         bool "OMAP3517/ AM3517 EVM board"
264         depends on ARCH_OMAP3
265         default y
266         select OMAP_PACKAGE_CBB
267
268 config MACH_CRANEBOARD
269         bool "AM3517/05 CRANE board"
270         depends on ARCH_OMAP3
271         select OMAP_PACKAGE_CBB
272
273 config 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
280 config MACH_TOUCHBOOK
281         bool "OMAP3 Touch Book"
282         depends on ARCH_OMAP3
283         default y
284         select OMAP_PACKAGE_CBB
285
286 config MACH_OMAP_3430SDP
287         bool "OMAP 3430 SDP board"
288         depends on ARCH_OMAP3
289         default y
290         select OMAP_PACKAGE_CBB
291
292 config MACH_NOKIA_N800
293        bool
294
295 config MACH_NOKIA_N810
296        bool
297
298 config MACH_NOKIA_N810_WIMAX
299        bool
300
301 config 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
310 config 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
317 config MACH_NOKIA_RX51
318         bool "Nokia N900 (RX-51) phone"
319         depends on ARCH_OMAP3
320         default y
321         select OMAP_PACKAGE_CBB
322
323 config 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
330 config 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
337 config 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
344 config MACH_CM_T3517
345         bool "CompuLab CM-T3517 module"
346         depends on ARCH_OMAP3
347         default y
348         select OMAP_PACKAGE_CBB
349
350 config MACH_CM_T3730
351        bool
352
353 config MACH_IGEP0020
354         bool "IGEP v2 board"
355         depends on ARCH_OMAP3
356         default y
357         select OMAP_PACKAGE_CBB
358
359 config 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
366 config MACH_SBC3530
367         bool "OMAP3 SBC STALKER board"
368         depends on ARCH_OMAP3
369         default y
370         select OMAP_PACKAGE_CUS
371
372 config MACH_OMAP_3630SDP
373         bool "OMAP3630 SDP board"
374         depends on ARCH_OMAP3
375         default y
376         select OMAP_PACKAGE_CBP
377
378 config MACH_TI8168EVM
379         bool "TI8168 Evaluation Module"
380         depends on SOC_TI81XX
381         default y
382
383 config MACH_TI8148EVM
384         bool "TI8148 Evaluation Module"
385         depends on SOC_TI81XX
386         default y
387
388 config 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
396 config 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
408 config 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.
429 endmenu
430
431 endif