xref: /linux/arch/arm/mach-omap2/Kconfig (revision 04e8d9d139c9fca2717b65a46333dd1cfd87dc28)
1ec8f24b7SThomas Gleixner# SPDX-License-Identifier: GPL-2.0-only
221278aeaSRob Herringmenu "TI OMAP/AM/DM/DRA Family"
321278aeaSRob Herring	depends on ARCH_MULTI_V6 || ARCH_MULTI_V7
421278aeaSRob Herring
5133ad7abSTony Lindgrenconfig OMAP_HWMOD
6133ad7abSTony Lindgren	bool
7133ad7abSTony Lindgren
859d92875SArnd Bergmannconfig ARCH_OMAP2
959d92875SArnd Bergmann	bool "TI OMAP2"
1059d92875SArnd Bergmann	depends on ARCH_MULTI_V6
1159d92875SArnd Bergmann	select ARCH_OMAP2PLUS
1259d92875SArnd Bergmann	select CPU_V6
13133ad7abSTony Lindgren	select OMAP_HWMOD
1459d92875SArnd Bergmann	select SOC_HAS_OMAP2_SDRC
1559d92875SArnd Bergmann
1659d92875SArnd Bergmannconfig ARCH_OMAP3
1759d92875SArnd Bergmann	bool "TI OMAP3"
1859d92875SArnd Bergmann	depends on ARCH_MULTI_V7
1959d92875SArnd Bergmann	select ARCH_OMAP2PLUS
202a39af38STony Lindgren	select ARM_CPU_SUSPEND
21133ad7abSTony Lindgren	select OMAP_HWMOD
2259d92875SArnd Bergmann	select OMAP_INTERCONNECT
232a39af38STony Lindgren	select PM_OPP
2459d92875SArnd Bergmann	select SOC_HAS_OMAP2_SDRC
252e4094bdSNishanth Menon	select ARM_ERRATA_430973
2659d92875SArnd Bergmann
2759d92875SArnd Bergmannconfig ARCH_OMAP4
2859d92875SArnd Bergmann	bool "TI OMAP4"
2959d92875SArnd Bergmann	depends on ARCH_MULTI_V7
3059d92875SArnd Bergmann	select ARCH_OMAP2PLUS
3159d92875SArnd Bergmann	select ARCH_NEEDS_CPU_IDLE_COUPLED if SMP
322a39af38STony Lindgren	select ARM_CPU_SUSPEND
3359d92875SArnd Bergmann	select ARM_ERRATA_720789
3459d92875SArnd Bergmann	select ARM_GIC
3559d92875SArnd Bergmann	select HAVE_ARM_SCU if SMP
3647dcd356SOlof Johansson	select HAVE_ARM_TWD if SMP
3759d92875SArnd Bergmann	select OMAP_INTERCONNECT
383fa60975SRussell King	select OMAP_INTERCONNECT_BARRIER
39a641f3a6SRussell King	select PL310_ERRATA_588369 if CACHE_L2X0
40a641f3a6SRussell King	select PL310_ERRATA_727915 if CACHE_L2X0
412a39af38STony Lindgren	select PM_OPP
42464ed18eSRafael J. Wysocki	select PM if CPU_IDLE
4359d92875SArnd Bergmann	select ARM_ERRATA_754322
4459d92875SArnd Bergmann	select ARM_ERRATA_775420
458d29bdbaSDave Gerlach	select OMAP_INTERCONNECT
4659d92875SArnd Bergmann
4759d92875SArnd Bergmannconfig SOC_OMAP5
4859d92875SArnd Bergmann	bool "TI OMAP5"
4959d92875SArnd Bergmann	depends on ARCH_MULTI_V7
5059d92875SArnd Bergmann	select ARCH_OMAP2PLUS
512a39af38STony Lindgren	select ARM_CPU_SUSPEND
5259d92875SArnd Bergmann	select ARM_GIC
5359d92875SArnd Bergmann	select HAVE_ARM_SCU if SMP
5459d92875SArnd Bergmann	select HAVE_ARM_ARCH_TIMER
55f82a3133SOlof Johansson	select ARM_ERRATA_798181 if SMP
56d8f8004eSNishanth Menon	select OMAP_INTERCONNECT
573fa60975SRussell King	select OMAP_INTERCONNECT_BARRIER
582a39af38STony Lindgren	select PM_OPP
596a3b764bSTony Lindgren	select ZONE_DMA if ARM_LPAE
6059d92875SArnd Bergmann
6159d92875SArnd Bergmannconfig SOC_AM33XX
621085189fSEzequiel Garcia	bool "TI AM33XX"
6359d92875SArnd Bergmann	depends on ARCH_MULTI_V7
6459d92875SArnd Bergmann	select ARCH_OMAP2PLUS
652a39af38STony Lindgren	select ARM_CPU_SUSPEND
6659d92875SArnd Bergmann
6759d92875SArnd Bergmannconfig SOC_AM43XX
6859d92875SArnd Bergmann	bool "TI AM43x"
6959d92875SArnd Bergmann	depends on ARCH_MULTI_V7
7059d92875SArnd Bergmann	select ARCH_OMAP2PLUS
7159d92875SArnd Bergmann	select ARM_GIC
7259d92875SArnd Bergmann	select MACH_OMAP_GENERIC
73f87d089dSDave Gerlach	select HAVE_ARM_SCU
740b3e6fcaSGrygorii Strashko	select GENERIC_CLOCKEVENTS_BROADCAST
7554011103SFelipe Balbi	select HAVE_ARM_TWD
7665db875dSDave Gerlach	select ARM_ERRATA_754322
7765db875dSDave Gerlach	select ARM_ERRATA_775420
7872bb40b8SDave Gerlach	select OMAP_INTERCONNECT
792a39af38STony Lindgren	select ARM_CPU_SUSPEND
8059d92875SArnd Bergmann
8168b9f608STero Kristoconfig SOC_DRA7XX
8268b9f608STero Kristo	bool "TI DRA7XX"
8368b9f608STero Kristo	depends on ARCH_MULTI_V7
8468b9f608STero Kristo	select ARCH_OMAP2PLUS
852a39af38STony Lindgren	select ARM_CPU_SUSPEND
8668b9f608STero Kristo	select ARM_GIC
87d2e104c6SNishanth Menon	select HAVE_ARM_SCU if SMP
8868b9f608STero Kristo	select HAVE_ARM_ARCH_TIMER
895c61e619SSricharan R	select IRQ_CROSSBAR
90209431efSPraneeth Bajjuri	select ARM_ERRATA_798181 if SMP
91d2e104c6SNishanth Menon	select OMAP_INTERCONNECT
923fa60975SRussell King	select OMAP_INTERCONNECT_BARRIER
932a39af38STony Lindgren	select PM_OPP
946a3b764bSTony Lindgren	select ZONE_DMA if ARM_LPAE
95c2818a19SKishon Vijay Abraham I	select PINCTRL_TI_IODELAY if OF && PINCTRL
9668b9f608STero Kristo
97a0694861STony Lindgrenconfig ARCH_OMAP2PLUS
9859d92875SArnd Bergmann	bool
9959d92875SArnd Bergmann	select ARCH_HAS_BANDGAP
100fe013e21SArnd Bergmann	select ARCH_HAS_RESET_CONTROLLER
101a0694861STony Lindgren	select ARCH_OMAP
102a0694861STony Lindgren	select CLKSRC_MMIO
103a0694861STony Lindgren	select GENERIC_IRQ_CHIP
1045c34a4e8SLinus Walleij	select GPIOLIB
105f2acae69STony Lindgren	select MACH_OMAP_GENERIC
10618640193STony Lindgren	select MEMORY
107da4d8145STony Lindgren	select MFD_SYSCON
108a0694861STony Lindgren	select OMAP_DM_TIMER
10918640193STony Lindgren	select OMAP_GPMC
110a0694861STony Lindgren	select PINCTRL
1112a39af38STony Lindgren	select PM
1122a39af38STony Lindgren	select PM_GENERIC_DOMAINS
1132a39af38STony Lindgren	select PM_GENERIC_DOMAINS_OF
114fe013e21SArnd Bergmann	select RESET_CONTROLLER
1156770b211SRuslan Bilovol	select SOC_BUS
1160eecc636STony Lindgren	select TI_SYSC
1178598066cSFelipe Balbi	select OMAP_IRQCHIP
118429ac200SFelipe Balbi	select CLKSRC_TI_32K
119a0694861STony Lindgren	help
120a0694861STony Lindgren	  Systems based on OMAP2, OMAP3, OMAP4 or OMAP5
121a0694861STony Lindgren
1223fa60975SRussell Kingconfig OMAP_INTERCONNECT_BARRIER
1233fa60975SRussell King	bool
1243fa60975SRussell King	select ARM_HEAVY_MB
1253fa60975SRussell King
126*04e8d9d1SArnd Bergmannconfig ARCH_OMAP
127*04e8d9d1SArnd Bergmann	bool
128a0694861STony Lindgren
1294a54db61STony Lindgrenif ARCH_OMAP2PLUS
1304a54db61STony Lindgren
1314a54db61STony Lindgrenmenu "TI OMAP2/3/4 Specific Features"
1324a54db61STony Lindgren
1338d9166b5STony Lindgrenconfig ARCH_OMAP2PLUS_TYPICAL
1348d9166b5STony Lindgren	bool "Typical OMAP configuration"
1358d9166b5STony Lindgren	default y
1368d9166b5STony Lindgren	select AEABI
137b1b3f49cSRussell King	select HIGHMEM
1388d9166b5STony Lindgren	select I2C
1398d9166b5STony Lindgren	select I2C_OMAP
1408d9166b5STony Lindgren	select MENELAUS if ARCH_OMAP2
1418dd21c93SR Sricharan	select NEON if CPU_V7
142b1b3f49cSRussell King	select REGULATOR
143fc827928SGrygorii Strashko	select REGULATOR_FIXED_VOLTAGE
1448d9166b5STony Lindgren	select TWL4030_CORE if ARCH_OMAP3 || ARCH_OMAP4
1458d9166b5STony Lindgren	select TWL4030_POWER if ARCH_OMAP3 || ARCH_OMAP4
146b1b3f49cSRussell King	select VFP
1478d9166b5STony Lindgren	help
1488d9166b5STony Lindgren	  Compile a kernel suitable for booting most boards
1498d9166b5STony Lindgren
150ecc46cfdSVaibhav Hiremathconfig SOC_HAS_OMAP2_SDRC
151ecc46cfdSVaibhav Hiremath	bool "OMAP2 SDRAM Controller support"
152ecc46cfdSVaibhav Hiremath
153fa6d79d2SSantosh Shilimkarconfig SOC_HAS_REALTIME_COUNTER
154fa6d79d2SSantosh Shilimkar	bool "Real time free running counter"
155f18153f9SR Sricharan	depends on SOC_OMAP5 || SOC_DRA7XX
15634cceb74SJon Hunter	default y
157fa6d79d2SSantosh Shilimkar
158*04e8d9d1SArnd Bergmannconfig POWER_AVS_OMAP
159*04e8d9d1SArnd Bergmann	bool "AVS(Adaptive Voltage Scaling) support for OMAP IP versions 1&2"
160*04e8d9d1SArnd Bergmann	depends on (ARCH_OMAP3 || ARCH_OMAP4) && PM
161*04e8d9d1SArnd Bergmann	select POWER_SUPPLY
162*04e8d9d1SArnd Bergmann	help
163*04e8d9d1SArnd Bergmann	  Say Y to enable AVS(Adaptive Voltage Scaling)
164*04e8d9d1SArnd Bergmann	  support on OMAP containing the version 1 or
165*04e8d9d1SArnd Bergmann	  version 2 of the SmartReflex IP.
166*04e8d9d1SArnd Bergmann	  V1 is the 65nm version used in OMAP3430.
167*04e8d9d1SArnd Bergmann	  V2 is the update for the 45nm version of the IP used in OMAP3630
168*04e8d9d1SArnd Bergmann	  and OMAP4430
169*04e8d9d1SArnd Bergmann
170*04e8d9d1SArnd Bergmann	  Please note, that by default SmartReflex is only
171*04e8d9d1SArnd Bergmann	  initialized and not enabled. To enable the automatic voltage
172*04e8d9d1SArnd Bergmann	  compensation for vdd mpu and vdd core from user space,
173*04e8d9d1SArnd Bergmann	  user must write 1 to
174*04e8d9d1SArnd Bergmann		/debug/smartreflex/sr_<X>/autocomp,
175*04e8d9d1SArnd Bergmann	  where X is mpu_iva or core for OMAP3.
176*04e8d9d1SArnd Bergmann	  Optionally autocompensation can be enabled in the kernel
177*04e8d9d1SArnd Bergmann	  by default during system init via the enable_on_init flag
178*04e8d9d1SArnd Bergmann	  which an be passed as platform data to the smartreflex driver.
179*04e8d9d1SArnd Bergmann
180*04e8d9d1SArnd Bergmannconfig POWER_AVS_OMAP_CLASS3
181*04e8d9d1SArnd Bergmann	bool "Class 3 mode of Smartreflex Implementation"
182*04e8d9d1SArnd Bergmann	depends on POWER_AVS_OMAP && TWL4030_CORE
183*04e8d9d1SArnd Bergmann	help
184*04e8d9d1SArnd Bergmann	  Say Y to enable Class 3 implementation of Smartreflex
185*04e8d9d1SArnd Bergmann
186*04e8d9d1SArnd Bergmann	  Class 3 implementation of Smartreflex employs continuous hardware
187*04e8d9d1SArnd Bergmann	  voltage calibration.
188*04e8d9d1SArnd Bergmann
189*04e8d9d1SArnd Bergmannconfig OMAP3_L2_AUX_SECURE_SAVE_RESTORE
190*04e8d9d1SArnd Bergmann	bool "OMAP3 HS/EMU save and restore for L2 AUX control register"
191*04e8d9d1SArnd Bergmann	depends on ARCH_OMAP3 && PM
192*04e8d9d1SArnd Bergmann	help
193*04e8d9d1SArnd Bergmann	  Without this option, L2 Auxiliary control register contents are
194*04e8d9d1SArnd Bergmann	  lost during off-mode entry on HS/EMU devices. This feature
195*04e8d9d1SArnd Bergmann	  requires support from PPA / boot-loader in HS/EMU devices, which
196*04e8d9d1SArnd Bergmann	  currently does not exist by default.
197*04e8d9d1SArnd Bergmann
198*04e8d9d1SArnd Bergmannconfig OMAP3_L2_AUX_SECURE_SERVICE_SET_ID
199*04e8d9d1SArnd Bergmann	int "Service ID for the support routine to set L2 AUX control"
200*04e8d9d1SArnd Bergmann	depends on OMAP3_L2_AUX_SECURE_SAVE_RESTORE
201*04e8d9d1SArnd Bergmann	default 43
202*04e8d9d1SArnd Bergmann	help
203*04e8d9d1SArnd Bergmann	  PPA routine service ID for setting L2 auxiliary control register.
204*04e8d9d1SArnd Bergmann
2051dbae815STony Lindgrencomment "OMAP Core Type"
206f558b275STony Lindgren	depends on ARCH_OMAP2
2071dbae815STony Lindgren
20859b479e0STony Lindgrenconfig SOC_OMAP2420
2091dbae815STony Lindgren	bool "OMAP2420 support"
210f558b275STony Lindgren	depends on ARCH_OMAP2
211ffb63e34STony Lindgren	default y
21277900a2fSTimo Teras	select OMAP_DM_TIMER
213ecc46cfdSVaibhav Hiremath	select SOC_HAS_OMAP2_SDRC
2141dbae815STony Lindgren
21559b479e0STony Lindgrenconfig SOC_OMAP2430
21672d0f1c3SSyed Mohammed Khasim	bool "OMAP2430 support"
217f558b275STony Lindgren	depends on ARCH_OMAP2
218ffb63e34STony Lindgren	default y
219ecc46cfdSVaibhav Hiremath	select SOC_HAS_OMAP2_SDRC
22072d0f1c3SSyed Mohammed Khasim
22159b479e0STony Lindgrenconfig SOC_OMAP3430
222cc26b3b0SSyed Mohammed, Khasim	bool "OMAP3430 support"
223f558b275STony Lindgren	depends on ARCH_OMAP3
224ffb63e34STony Lindgren	default y
225ecc46cfdSVaibhav Hiremath	select SOC_HAS_OMAP2_SDRC
226cc26b3b0SSyed Mohammed, Khasim
22733959553SKevin Hilmanconfig SOC_TI81XX
228a920360fSHemant Pedanekar	bool "TI81XX support"
229f558b275STony Lindgren	depends on ARCH_OMAP3
2304bd7be22SHemant Pedanekar	default y
2314bd7be22SHemant Pedanekar
232f2acae69STony Lindgrencomment "OMAP Legacy Platform Data Board Type"
233f558b275STony Lindgren	depends on ARCH_OMAP2PLUS
2341dbae815STony Lindgren
2351dbae815STony Lindgrenconfig MACH_OMAP_GENERIC
236f2acae69STony Lindgren	bool
2371dbae815STony Lindgren
2381b52d5dfSKalle Valoconfig MACH_OMAP2_TUSB6010
2391b52d5dfSKalle Valo	bool
24059b479e0STony Lindgren	depends on ARCH_OMAP2 && SOC_OMAP2420
2411b52d5dfSKalle Valo	default y if MACH_NOKIA_N8X0
2421b52d5dfSKalle Valo
243d2fbf345STony Lindgrenconfig MACH_NOKIA_N810
244d2fbf345STony Lindgren       bool
245d2fbf345STony Lindgren
246d2fbf345STony Lindgrenconfig MACH_NOKIA_N810_WIMAX
247d2fbf345STony Lindgren       bool
248d2fbf345STony Lindgren
24963138812SKalle Valoconfig MACH_NOKIA_N8X0
25063138812SKalle Valo	bool "Nokia N800/N810"
25159b479e0STony Lindgren	depends on SOC_OMAP2420
252ffb63e34STony Lindgren	default y
253d2fbf345STony Lindgren	select MACH_NOKIA_N810
254d2fbf345STony Lindgren	select MACH_NOKIA_N810_WIMAX
25563138812SKalle Valo
25618862cbeSPaul Walmsleyconfig OMAP3_SDRC_AC_TIMING
25718862cbeSPaul Walmsley	bool "Enable SDRC AC timing register changes"
258a8eb7ca0STony Lindgren	depends on ARCH_OMAP3
25918862cbeSPaul Walmsley	help
26018862cbeSPaul Walmsley	  If you know that none of your system initiators will attempt to
26118862cbeSPaul Walmsley	  access SDRAM during CORE DVFS, select Y here.  This should boost
26218862cbeSPaul Walmsley	  SDRAM performance at lower CORE OPPs.  There are relatively few
26318862cbeSPaul Walmsley	  users who will wish to say yes at this point - almost everyone will
26418862cbeSPaul Walmsley	  wish to say no.  Selecting yes without understanding what is
26518862cbeSPaul Walmsley	  going on could result in system crashes;
26618862cbeSPaul Walmsley
2674a54db61STony Lindgrenendmenu
2684a54db61STony Lindgren
2694a54db61STony Lindgrenendif
27021278aeaSRob Herring
271c0053bd5SNishanth Menonconfig OMAP5_ERRATA_801819
272c0053bd5SNishanth Menon	bool "Errata 801819: An eviction from L1 data cache might stall indefinitely"
273c0053bd5SNishanth Menon	depends on SOC_OMAP5 || SOC_DRA7XX
274c0053bd5SNishanth Menon	help
275c0053bd5SNishanth Menon	  A livelock can occur in the L2 cache arbitration that might prevent
276c0053bd5SNishanth Menon	  a snoop from completing. Under certain conditions this can cause the
277c0053bd5SNishanth Menon	  system to deadlock.
278c0053bd5SNishanth Menon
27921278aeaSRob Herringendmenu
280