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
10 depends on ARCH_MULTI_V6
14 select SOC_HAS_OMAP2_SDRC
18 depends on ARCH_MULTI_V7
20 select ARM_CPU_SUSPEND
22 select OMAP_INTERCONNECT
24 select SOC_HAS_OMAP2_SDRC
25 select ARM_ERRATA_430973
29 depends on ARCH_MULTI_V7
31 select ARCH_NEEDS_CPU_IDLE_COUPLED if SMP
32 select ARM_CPU_SUSPEND
33 select ARM_ERRATA_720789
35 select HAVE_ARM_SCU if SMP
36 select HAVE_ARM_TWD if SMP
37 select OMAP_INTERCONNECT
38 select OMAP_INTERCONNECT_BARRIER
39 select PL310_ERRATA_588369 if CACHE_L2X0
40 select PL310_ERRATA_727915 if CACHE_L2X0
43 select ARM_ERRATA_754322
44 select ARM_ERRATA_775420
45 select OMAP_INTERCONNECT
49 depends on ARCH_MULTI_V7
51 select ARM_CPU_SUSPEND
53 select HAVE_ARM_SCU if SMP
54 select HAVE_ARM_ARCH_TIMER
55 select ARM_ERRATA_798181 if SMP
56 select OMAP_INTERCONNECT
57 select OMAP_INTERCONNECT_BARRIER
59 select ZONE_DMA if ARM_LPAE
63 depends on ARCH_MULTI_V7
65 select ARM_CPU_SUSPEND
69 depends on ARCH_MULTI_V7
72 select MACH_OMAP_GENERIC
74 select GENERIC_CLOCKEVENTS_BROADCAST
76 select ARM_ERRATA_754322
77 select ARM_ERRATA_775420
78 select OMAP_INTERCONNECT
79 select ARM_CPU_SUSPEND
83 depends on ARCH_MULTI_V7
85 select ARM_CPU_SUSPEND
87 select HAVE_ARM_SCU if SMP
88 select HAVE_ARM_ARCH_TIMER
90 select ARM_ERRATA_798181 if SMP
91 select OMAP_INTERCONNECT
92 select OMAP_INTERCONNECT_BARRIER
94 select ZONE_DMA if ARM_LPAE
95 select PINCTRL_TI_IODELAY if OF && PINCTRL
99 select ARCH_HAS_BANDGAP
100 select ARCH_HAS_RESET_CONTROLLER
103 select GENERIC_IRQ_CHIP
105 select MACH_OMAP_GENERIC
112 select PM_GENERIC_DOMAINS
113 select PM_GENERIC_DOMAINS_OF
114 select RESET_CONTROLLER
120 Systems based on OMAP2, OMAP3, OMAP4 or OMAP5
122 config OMAP_INTERCONNECT_BARRIER
131 menu "TI OMAP2/3/4 Specific Features"
133 config ARCH_OMAP2PLUS_TYPICAL
134 bool "Typical OMAP configuration"
140 select MENELAUS if ARCH_OMAP2
141 select NEON if CPU_V7
143 select REGULATOR_FIXED_VOLTAGE
144 select TWL4030_CORE if ARCH_OMAP3 || ARCH_OMAP4
145 select TWL4030_POWER if ARCH_OMAP3 || ARCH_OMAP4
148 Compile a kernel suitable for booting most boards
150 config SOC_HAS_OMAP2_SDRC
151 bool "OMAP2 SDRAM Controller support"
153 config SOC_HAS_REALTIME_COUNTER
154 bool "Real time free running counter"
155 depends on SOC_OMAP5 || SOC_DRA7XX
158 config POWER_AVS_OMAP
159 bool "AVS(Adaptive Voltage Scaling) support for OMAP IP versions 1&2"
160 depends on (ARCH_OMAP3 || ARCH_OMAP4) && PM
163 Say Y to enable AVS(Adaptive Voltage Scaling)
164 support on OMAP containing the version 1 or
165 version 2 of the SmartReflex IP.
166 V1 is the 65nm version used in OMAP3430.
167 V2 is the update for the 45nm version of the IP used in OMAP3630
170 Please note, that by default SmartReflex is only
171 initialized and not enabled. To enable the automatic voltage
172 compensation for vdd mpu and vdd core from user space,
174 /debug/smartreflex/sr_<X>/autocomp,
175 where X is mpu_iva or core for OMAP3.
176 Optionally autocompensation can be enabled in the kernel
177 by default during system init via the enable_on_init flag
178 which an be passed as platform data to the smartreflex driver.
180 config POWER_AVS_OMAP_CLASS3
181 bool "Class 3 mode of Smartreflex Implementation"
182 depends on POWER_AVS_OMAP && TWL4030_CORE
184 Say Y to enable Class 3 implementation of Smartreflex
186 Class 3 implementation of Smartreflex employs continuous hardware
189 config OMAP3_L2_AUX_SECURE_SAVE_RESTORE
190 bool "OMAP3 HS/EMU save and restore for L2 AUX control register"
191 depends on ARCH_OMAP3 && PM
193 Without this option, L2 Auxiliary control register contents are
194 lost during off-mode entry on HS/EMU devices. This feature
195 requires support from PPA / boot-loader in HS/EMU devices, which
196 currently does not exist by default.
198 config OMAP3_L2_AUX_SECURE_SERVICE_SET_ID
199 int "Service ID for the support routine to set L2 AUX control"
200 depends on OMAP3_L2_AUX_SECURE_SAVE_RESTORE
203 PPA routine service ID for setting L2 auxiliary control register.
205 comment "OMAP Core Type"
206 depends on ARCH_OMAP2
209 bool "OMAP2420 support"
210 depends on ARCH_OMAP2
213 select SOC_HAS_OMAP2_SDRC
216 bool "OMAP2430 support"
217 depends on ARCH_OMAP2
219 select SOC_HAS_OMAP2_SDRC
222 bool "OMAP3430 support"
223 depends on ARCH_OMAP3
225 select SOC_HAS_OMAP2_SDRC
228 bool "TI81XX support"
229 depends on ARCH_OMAP3
232 comment "OMAP Legacy Platform Data Board Type"
233 depends on ARCH_OMAP2PLUS
235 config MACH_OMAP_GENERIC
238 config MACH_OMAP2_TUSB6010
240 depends on ARCH_OMAP2 && SOC_OMAP2420
241 default y if MACH_NOKIA_N8X0
243 config MACH_NOKIA_N810
246 config MACH_NOKIA_N810_WIMAX
249 config MACH_NOKIA_N8X0
250 bool "Nokia N800/N810"
251 depends on SOC_OMAP2420
253 select MACH_NOKIA_N810
254 select MACH_NOKIA_N810_WIMAX
256 config OMAP3_SDRC_AC_TIMING
257 bool "Enable SDRC AC timing register changes"
258 depends on ARCH_OMAP3
260 If you know that none of your system initiators will attempt to
261 access SDRAM during CORE DVFS, select Y here. This should boost
262 SDRAM performance at lower CORE OPPs. There are relatively few
263 users who will wish to say yes at this point - almost everyone will
264 wish to say no. Selecting yes without understanding what is
265 going on could result in system crashes;
271 config OMAP5_ERRATA_801819
272 bool "Errata 801819: An eviction from L1 data cache might stall indefinitely"
273 depends on SOC_OMAP5 || SOC_DRA7XX
275 A livelock can occur in the L2 cache arbitration that might prevent
276 a snoop from completing. Under certain conditions this can cause the