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
108 select OMAP_DM_SYSTIMER
113 select PM_GENERIC_DOMAINS
114 select PM_GENERIC_DOMAINS_OF
115 select RESET_CONTROLLER
121 Systems based on OMAP2, OMAP3, OMAP4 or OMAP5
123 config OMAP_INTERCONNECT_BARRIER
132 menu "TI OMAP2/3/4 Specific Features"
134 config ARCH_OMAP2PLUS_TYPICAL
135 bool "Typical OMAP configuration"
141 select MENELAUS if ARCH_OMAP2
142 select NEON if CPU_V7
144 select REGULATOR_FIXED_VOLTAGE
145 select TWL4030_CORE if ARCH_OMAP3 || ARCH_OMAP4
146 select TWL4030_POWER if ARCH_OMAP3 || ARCH_OMAP4
149 Compile a kernel suitable for booting most boards
151 config SOC_HAS_OMAP2_SDRC
152 bool "OMAP2 SDRAM Controller support"
154 config SOC_HAS_REALTIME_COUNTER
155 bool "Real time free running counter"
156 depends on SOC_OMAP5 || SOC_DRA7XX
159 config POWER_AVS_OMAP
160 bool "AVS(Adaptive Voltage Scaling) support for OMAP IP versions 1&2"
161 depends on (ARCH_OMAP3 || ARCH_OMAP4) && PM
164 Say Y to enable AVS(Adaptive Voltage Scaling)
165 support on OMAP containing the version 1 or
166 version 2 of the SmartReflex IP.
167 V1 is the 65nm version used in OMAP3430.
168 V2 is the update for the 45nm version of the IP used in OMAP3630
171 Please note, that by default SmartReflex is only
172 initialized and not enabled. To enable the automatic voltage
173 compensation for vdd mpu and vdd core from user space,
175 /debug/smartreflex/sr_<X>/autocomp,
176 where X is mpu_iva or core for OMAP3.
177 Optionally autocompensation can be enabled in the kernel
178 by default during system init via the enable_on_init flag
179 which an be passed as platform data to the smartreflex driver.
181 config POWER_AVS_OMAP_CLASS3
182 bool "Class 3 mode of Smartreflex Implementation"
183 depends on POWER_AVS_OMAP && TWL4030_CORE
185 Say Y to enable Class 3 implementation of Smartreflex
187 Class 3 implementation of Smartreflex employs continuous hardware
190 config OMAP3_L2_AUX_SECURE_SAVE_RESTORE
191 bool "OMAP3 HS/EMU save and restore for L2 AUX control register"
192 depends on ARCH_OMAP3 && PM
194 Without this option, L2 Auxiliary control register contents are
195 lost during off-mode entry on HS/EMU devices. This feature
196 requires support from PPA / boot-loader in HS/EMU devices, which
197 currently does not exist by default.
199 config OMAP3_L2_AUX_SECURE_SERVICE_SET_ID
200 int "Service ID for the support routine to set L2 AUX control"
201 depends on OMAP3_L2_AUX_SECURE_SAVE_RESTORE
204 PPA routine service ID for setting L2 auxiliary control register.
206 comment "OMAP Core Type"
207 depends on ARCH_OMAP2
210 bool "OMAP2420 support"
211 depends on ARCH_OMAP2
213 select OMAP_DM_SYSTIMER
215 select SOC_HAS_OMAP2_SDRC
218 bool "OMAP2430 support"
219 depends on ARCH_OMAP2
221 select SOC_HAS_OMAP2_SDRC
224 bool "OMAP3430 support"
225 depends on ARCH_OMAP3
227 select SOC_HAS_OMAP2_SDRC
230 bool "TI81XX support"
231 depends on ARCH_OMAP3
234 comment "OMAP Legacy Platform Data Board Type"
235 depends on ARCH_OMAP2PLUS
237 config MACH_OMAP_GENERIC
240 config MACH_OMAP2_TUSB6010
242 depends on ARCH_OMAP2 && SOC_OMAP2420
243 default y if MACH_NOKIA_N8X0
245 config MACH_NOKIA_N810
248 config MACH_NOKIA_N810_WIMAX
251 config MACH_NOKIA_N8X0
252 bool "Nokia N800/N810"
253 depends on SOC_OMAP2420
255 select MACH_NOKIA_N810
256 select MACH_NOKIA_N810_WIMAX
258 config OMAP3_SDRC_AC_TIMING
259 bool "Enable SDRC AC timing register changes"
260 depends on ARCH_OMAP3
262 If you know that none of your system initiators will attempt to
263 access SDRAM during CORE DVFS, select Y here. This should boost
264 SDRAM performance at lower CORE OPPs. There are relatively few
265 users who will wish to say yes at this point - almost everyone will
266 wish to say no. Selecting yes without understanding what is
267 going on could result in system crashes;
273 config OMAP5_ERRATA_801819
274 bool "Errata 801819: An eviction from L1 data cache might stall indefinitely"
275 depends on SOC_OMAP5 || SOC_DRA7XX
277 A livelock can occur in the L2 cache arbitration that might prevent
278 a snoop from completing. Under certain conditions this can cause the