Merge tag 'timers-urgent-2020-12-27' of git://git.kernel.org/pub/scm/linux/kernel...
[linux-2.6-microblaze.git] / arch / arm / mach-omap2 / Kconfig
1 # SPDX-License-Identifier: GPL-2.0-only
2 menu "TI OMAP/AM/DM/DRA Family"
3         depends on ARCH_MULTI_V6 || ARCH_MULTI_V7
4
5 config OMAP_HWMOD
6         bool
7
8 config ARCH_OMAP2
9         bool "TI OMAP2"
10         depends on ARCH_MULTI_V6
11         select ARCH_OMAP2PLUS
12         select CPU_V6
13         select OMAP_HWMOD
14         select SOC_HAS_OMAP2_SDRC
15
16 config ARCH_OMAP3
17         bool "TI OMAP3"
18         depends on ARCH_MULTI_V7
19         select ARCH_OMAP2PLUS
20         select ARM_CPU_SUSPEND if PM
21         select OMAP_HWMOD
22         select OMAP_INTERCONNECT
23         select PM_OPP if PM
24         select PM if CPU_IDLE
25         select SOC_HAS_OMAP2_SDRC
26         select ARM_ERRATA_430973
27
28 config ARCH_OMAP4
29         bool "TI OMAP4"
30         depends on ARCH_MULTI_V7
31         select ARCH_OMAP2PLUS
32         select ARCH_NEEDS_CPU_IDLE_COUPLED if SMP
33         select ARM_CPU_SUSPEND if PM
34         select ARM_ERRATA_720789
35         select ARM_GIC
36         select HAVE_ARM_SCU if SMP
37         select HAVE_ARM_TWD if SMP
38         select OMAP_HWMOD
39         select OMAP_INTERCONNECT
40         select OMAP_INTERCONNECT_BARRIER
41         select PL310_ERRATA_588369 if CACHE_L2X0
42         select PL310_ERRATA_727915 if CACHE_L2X0
43         select PM_OPP if PM
44         select PM if CPU_IDLE
45         select ARM_ERRATA_754322
46         select ARM_ERRATA_775420
47         select OMAP_INTERCONNECT
48
49 config 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 HAVE_ARM_SCU if SMP
56         select HAVE_ARM_ARCH_TIMER
57         select ARM_ERRATA_798181 if SMP
58         select OMAP_HWMOD
59         select OMAP_INTERCONNECT
60         select OMAP_INTERCONNECT_BARRIER
61         select PM_OPP if PM
62         select ZONE_DMA if ARM_LPAE
63
64 config SOC_AM33XX
65         bool "TI AM33XX"
66         depends on ARCH_MULTI_V7
67         select ARCH_OMAP2PLUS
68         select ARM_CPU_SUSPEND if PM
69
70 config SOC_AM43XX
71         bool "TI AM43x"
72         depends on ARCH_MULTI_V7
73         select ARCH_OMAP2PLUS
74         select ARM_GIC
75         select MACH_OMAP_GENERIC
76         select HAVE_ARM_SCU
77         select GENERIC_CLOCKEVENTS_BROADCAST
78         select HAVE_ARM_TWD
79         select ARM_ERRATA_754322
80         select ARM_ERRATA_775420
81         select OMAP_INTERCONNECT
82         select ARM_CPU_SUSPEND if PM
83
84 config SOC_DRA7XX
85         bool "TI DRA7XX"
86         depends on ARCH_MULTI_V7
87         select ARCH_OMAP2PLUS
88         select ARM_CPU_SUSPEND if PM
89         select ARM_GIC
90         select HAVE_ARM_SCU if SMP
91         select HAVE_ARM_ARCH_TIMER
92         select IRQ_CROSSBAR
93         select ARM_ERRATA_798181 if SMP
94         select OMAP_HWMOD
95         select OMAP_INTERCONNECT
96         select OMAP_INTERCONNECT_BARRIER
97         select PM_OPP if PM
98         select ZONE_DMA if ARM_LPAE
99         select PINCTRL_TI_IODELAY if OF && PINCTRL
100
101 config ARCH_OMAP2PLUS
102         bool
103         select ARCH_HAS_BANDGAP
104         select ARCH_HAS_RESET_CONTROLLER
105         select ARCH_OMAP
106         select CLKSRC_MMIO
107         select GENERIC_IRQ_CHIP
108         select GPIOLIB
109         select MACH_OMAP_GENERIC
110         select MEMORY
111         select MFD_SYSCON
112         select OMAP_DM_TIMER
113         select OMAP_GPMC
114         select PINCTRL
115         select PM_GENERIC_DOMAINS if PM
116         select PM_GENERIC_DOMAINS_OF if PM
117         select RESET_CONTROLLER
118         select SOC_BUS
119         select TI_SYSC
120         select OMAP_IRQCHIP
121         select CLKSRC_TI_32K
122         help
123           Systems based on OMAP2, OMAP3, OMAP4 or OMAP5
124
125 config OMAP_INTERCONNECT_BARRIER
126         bool
127         select ARM_HEAVY_MB
128         
129
130 if ARCH_OMAP2PLUS
131
132 menu "TI OMAP2/3/4 Specific Features"
133
134 config ARCH_OMAP2PLUS_TYPICAL
135         bool "Typical OMAP configuration"
136         default y
137         select AEABI
138         select HIGHMEM
139         select I2C
140         select I2C_OMAP
141         select MENELAUS if ARCH_OMAP2
142         select NEON if CPU_V7
143         select PM
144         select REGULATOR
145         select REGULATOR_FIXED_VOLTAGE
146         select TWL4030_CORE if ARCH_OMAP3 || ARCH_OMAP4
147         select TWL4030_POWER if ARCH_OMAP3 || ARCH_OMAP4
148         select VFP
149         help
150           Compile a kernel suitable for booting most boards
151
152 config SOC_HAS_OMAP2_SDRC
153         bool "OMAP2 SDRAM Controller support"
154
155 config SOC_HAS_REALTIME_COUNTER
156         bool "Real time free running counter"
157         depends on SOC_OMAP5 || SOC_DRA7XX
158         default y
159
160 comment "OMAP Core Type"
161         depends on ARCH_OMAP2
162
163 config SOC_OMAP2420
164         bool "OMAP2420 support"
165         depends on ARCH_OMAP2
166         default y
167         select OMAP_DM_TIMER
168         select SOC_HAS_OMAP2_SDRC
169
170 config SOC_OMAP2430
171         bool "OMAP2430 support"
172         depends on ARCH_OMAP2
173         default y
174         select SOC_HAS_OMAP2_SDRC
175
176 config SOC_OMAP3430
177         bool "OMAP3430 support"
178         depends on ARCH_OMAP3
179         default y
180         select SOC_HAS_OMAP2_SDRC
181
182 config SOC_TI81XX
183         bool "TI81XX support"
184         depends on ARCH_OMAP3
185         default y
186
187 config OMAP_PACKAGE_CBC
188        bool
189
190 config OMAP_PACKAGE_CBB
191        bool
192
193 config OMAP_PACKAGE_CUS
194        bool
195
196 config OMAP_PACKAGE_CBP
197        bool
198
199 comment "OMAP Legacy Platform Data Board Type"
200         depends on ARCH_OMAP2PLUS
201
202 config MACH_OMAP_GENERIC
203         bool
204
205 config MACH_OMAP2_TUSB6010
206         bool
207         depends on ARCH_OMAP2 && SOC_OMAP2420
208         default y if MACH_NOKIA_N8X0
209
210 config MACH_OMAP3517EVM
211         bool "OMAP3517/ AM3517 EVM board"
212         depends on ARCH_OMAP3
213         default y
214
215 config MACH_OMAP3_PANDORA
216         bool "OMAP3 Pandora"
217         depends on ARCH_OMAP3
218         default y
219         select OMAP_PACKAGE_CBB
220
221 config MACH_NOKIA_N810
222        bool
223
224 config MACH_NOKIA_N810_WIMAX
225        bool
226
227 config MACH_NOKIA_N8X0
228         bool "Nokia N800/N810"
229         depends on SOC_OMAP2420
230         default y
231         select MACH_NOKIA_N810
232         select MACH_NOKIA_N810_WIMAX
233
234 config OMAP3_SDRC_AC_TIMING
235         bool "Enable SDRC AC timing register changes"
236         depends on ARCH_OMAP3
237         help
238           If you know that none of your system initiators will attempt to
239           access SDRAM during CORE DVFS, select Y here.  This should boost
240           SDRAM performance at lower CORE OPPs.  There are relatively few
241           users who will wish to say yes at this point - almost everyone will
242           wish to say no.  Selecting yes without understanding what is
243           going on could result in system crashes;
244
245 endmenu
246
247 endif
248
249 config OMAP5_ERRATA_801819
250         bool "Errata 801819: An eviction from L1 data cache might stall indefinitely"
251         depends on SOC_OMAP5 || SOC_DRA7XX
252         help
253           A livelock can occur in the L2 cache arbitration that might prevent
254           a snoop from completing. Under certain conditions this can cause the
255           system to deadlock.
256
257 endmenu