18c2ecf20Sopenharmony_ci# SPDX-License-Identifier: GPL-2.0-only
28c2ecf20Sopenharmony_cimenu "TI OMAP/AM/DM/DRA Family"
38c2ecf20Sopenharmony_ci	depends on ARCH_MULTI_V6 || ARCH_MULTI_V7
48c2ecf20Sopenharmony_ci
58c2ecf20Sopenharmony_ciconfig ARCH_OMAP2
68c2ecf20Sopenharmony_ci	bool "TI OMAP2"
78c2ecf20Sopenharmony_ci	depends on ARCH_MULTI_V6
88c2ecf20Sopenharmony_ci	select ARCH_OMAP2PLUS
98c2ecf20Sopenharmony_ci	select CPU_V6
108c2ecf20Sopenharmony_ci	select SOC_HAS_OMAP2_SDRC
118c2ecf20Sopenharmony_ci
128c2ecf20Sopenharmony_ciconfig ARCH_OMAP3
138c2ecf20Sopenharmony_ci	bool "TI OMAP3"
148c2ecf20Sopenharmony_ci	depends on ARCH_MULTI_V7
158c2ecf20Sopenharmony_ci	select ARCH_OMAP2PLUS
168c2ecf20Sopenharmony_ci	select ARM_CPU_SUSPEND if PM
178c2ecf20Sopenharmony_ci	select OMAP_INTERCONNECT
188c2ecf20Sopenharmony_ci	select PM_OPP if PM
198c2ecf20Sopenharmony_ci	select PM if CPU_IDLE
208c2ecf20Sopenharmony_ci	select SOC_HAS_OMAP2_SDRC
218c2ecf20Sopenharmony_ci	select ARM_ERRATA_430973
228c2ecf20Sopenharmony_ci
238c2ecf20Sopenharmony_ciconfig ARCH_OMAP4
248c2ecf20Sopenharmony_ci	bool "TI OMAP4"
258c2ecf20Sopenharmony_ci	depends on ARCH_MULTI_V7
268c2ecf20Sopenharmony_ci	select ARCH_OMAP2PLUS
278c2ecf20Sopenharmony_ci	select ARCH_NEEDS_CPU_IDLE_COUPLED if SMP
288c2ecf20Sopenharmony_ci	select ARM_CPU_SUSPEND if PM
298c2ecf20Sopenharmony_ci	select ARM_ERRATA_720789
308c2ecf20Sopenharmony_ci	select ARM_GIC
318c2ecf20Sopenharmony_ci	select HAVE_ARM_SCU if SMP
328c2ecf20Sopenharmony_ci	select HAVE_ARM_TWD if SMP
338c2ecf20Sopenharmony_ci	select OMAP_INTERCONNECT
348c2ecf20Sopenharmony_ci	select OMAP_INTERCONNECT_BARRIER
358c2ecf20Sopenharmony_ci	select PL310_ERRATA_588369 if CACHE_L2X0
368c2ecf20Sopenharmony_ci	select PL310_ERRATA_727915 if CACHE_L2X0
378c2ecf20Sopenharmony_ci	select PM_OPP if PM
388c2ecf20Sopenharmony_ci	select PM if CPU_IDLE
398c2ecf20Sopenharmony_ci	select ARM_ERRATA_754322
408c2ecf20Sopenharmony_ci	select ARM_ERRATA_775420
418c2ecf20Sopenharmony_ci	select OMAP_INTERCONNECT
428c2ecf20Sopenharmony_ci
438c2ecf20Sopenharmony_ciconfig SOC_OMAP5
448c2ecf20Sopenharmony_ci	bool "TI OMAP5"
458c2ecf20Sopenharmony_ci	depends on ARCH_MULTI_V7
468c2ecf20Sopenharmony_ci	select ARCH_OMAP2PLUS
478c2ecf20Sopenharmony_ci	select ARM_CPU_SUSPEND if PM
488c2ecf20Sopenharmony_ci	select ARM_GIC
498c2ecf20Sopenharmony_ci	select HAVE_ARM_SCU if SMP
508c2ecf20Sopenharmony_ci	select HAVE_ARM_ARCH_TIMER
518c2ecf20Sopenharmony_ci	select ARM_ERRATA_798181 if SMP
528c2ecf20Sopenharmony_ci	select OMAP_INTERCONNECT
538c2ecf20Sopenharmony_ci	select OMAP_INTERCONNECT_BARRIER
548c2ecf20Sopenharmony_ci	select PM_OPP if PM
558c2ecf20Sopenharmony_ci	select ZONE_DMA if ARM_LPAE
568c2ecf20Sopenharmony_ci
578c2ecf20Sopenharmony_ciconfig SOC_AM33XX
588c2ecf20Sopenharmony_ci	bool "TI AM33XX"
598c2ecf20Sopenharmony_ci	depends on ARCH_MULTI_V7
608c2ecf20Sopenharmony_ci	select ARCH_OMAP2PLUS
618c2ecf20Sopenharmony_ci	select ARM_CPU_SUSPEND if PM
628c2ecf20Sopenharmony_ci
638c2ecf20Sopenharmony_ciconfig SOC_AM43XX
648c2ecf20Sopenharmony_ci	bool "TI AM43x"
658c2ecf20Sopenharmony_ci	depends on ARCH_MULTI_V7
668c2ecf20Sopenharmony_ci	select ARCH_OMAP2PLUS
678c2ecf20Sopenharmony_ci	select ARM_GIC
688c2ecf20Sopenharmony_ci	select MACH_OMAP_GENERIC
698c2ecf20Sopenharmony_ci	select HAVE_ARM_SCU
708c2ecf20Sopenharmony_ci	select GENERIC_CLOCKEVENTS_BROADCAST
718c2ecf20Sopenharmony_ci	select HAVE_ARM_TWD
728c2ecf20Sopenharmony_ci	select ARM_ERRATA_754322
738c2ecf20Sopenharmony_ci	select ARM_ERRATA_775420
748c2ecf20Sopenharmony_ci	select OMAP_INTERCONNECT
758c2ecf20Sopenharmony_ci	select ARM_CPU_SUSPEND if PM
768c2ecf20Sopenharmony_ci
778c2ecf20Sopenharmony_ciconfig SOC_DRA7XX
788c2ecf20Sopenharmony_ci	bool "TI DRA7XX"
798c2ecf20Sopenharmony_ci	depends on ARCH_MULTI_V7
808c2ecf20Sopenharmony_ci	select ARCH_OMAP2PLUS
818c2ecf20Sopenharmony_ci	select ARM_CPU_SUSPEND if PM
828c2ecf20Sopenharmony_ci	select ARM_GIC
838c2ecf20Sopenharmony_ci	select HAVE_ARM_SCU if SMP
848c2ecf20Sopenharmony_ci	select HAVE_ARM_ARCH_TIMER
858c2ecf20Sopenharmony_ci	select IRQ_CROSSBAR
868c2ecf20Sopenharmony_ci	select ARM_ERRATA_798181 if SMP
878c2ecf20Sopenharmony_ci	select OMAP_INTERCONNECT
888c2ecf20Sopenharmony_ci	select OMAP_INTERCONNECT_BARRIER
898c2ecf20Sopenharmony_ci	select PM_OPP if PM
908c2ecf20Sopenharmony_ci	select ZONE_DMA if ARM_LPAE
918c2ecf20Sopenharmony_ci	select PINCTRL_TI_IODELAY if OF && PINCTRL
928c2ecf20Sopenharmony_ci
938c2ecf20Sopenharmony_ciconfig ARCH_OMAP2PLUS
948c2ecf20Sopenharmony_ci	bool
958c2ecf20Sopenharmony_ci	select ARCH_HAS_BANDGAP
968c2ecf20Sopenharmony_ci	select ARCH_HAS_RESET_CONTROLLER
978c2ecf20Sopenharmony_ci	select ARCH_OMAP
988c2ecf20Sopenharmony_ci	select CLKSRC_MMIO
998c2ecf20Sopenharmony_ci	select GENERIC_IRQ_CHIP
1008c2ecf20Sopenharmony_ci	select GPIOLIB
1018c2ecf20Sopenharmony_ci	select MACH_OMAP_GENERIC
1028c2ecf20Sopenharmony_ci	select MEMORY
1038c2ecf20Sopenharmony_ci	select MFD_SYSCON
1048c2ecf20Sopenharmony_ci	select OMAP_DM_TIMER
1058c2ecf20Sopenharmony_ci	select OMAP_GPMC
1068c2ecf20Sopenharmony_ci	select PINCTRL
1078c2ecf20Sopenharmony_ci	select PM_GENERIC_DOMAINS if PM
1088c2ecf20Sopenharmony_ci	select PM_GENERIC_DOMAINS_OF if PM
1098c2ecf20Sopenharmony_ci	select RESET_CONTROLLER
1108c2ecf20Sopenharmony_ci	select SOC_BUS
1118c2ecf20Sopenharmony_ci	select TI_SYSC
1128c2ecf20Sopenharmony_ci	select OMAP_IRQCHIP
1138c2ecf20Sopenharmony_ci	select CLKSRC_TI_32K
1148c2ecf20Sopenharmony_ci	help
1158c2ecf20Sopenharmony_ci	  Systems based on OMAP2, OMAP3, OMAP4 or OMAP5
1168c2ecf20Sopenharmony_ci
1178c2ecf20Sopenharmony_ciconfig OMAP_INTERCONNECT_BARRIER
1188c2ecf20Sopenharmony_ci	bool
1198c2ecf20Sopenharmony_ci	select ARM_HEAVY_MB
1208c2ecf20Sopenharmony_ci	
1218c2ecf20Sopenharmony_ci
1228c2ecf20Sopenharmony_ciif ARCH_OMAP2PLUS
1238c2ecf20Sopenharmony_ci
1248c2ecf20Sopenharmony_cimenu "TI OMAP2/3/4 Specific Features"
1258c2ecf20Sopenharmony_ci
1268c2ecf20Sopenharmony_ciconfig ARCH_OMAP2PLUS_TYPICAL
1278c2ecf20Sopenharmony_ci	bool "Typical OMAP configuration"
1288c2ecf20Sopenharmony_ci	default y
1298c2ecf20Sopenharmony_ci	select AEABI
1308c2ecf20Sopenharmony_ci	select HIGHMEM
1318c2ecf20Sopenharmony_ci	select I2C
1328c2ecf20Sopenharmony_ci	select I2C_OMAP
1338c2ecf20Sopenharmony_ci	select MENELAUS if ARCH_OMAP2
1348c2ecf20Sopenharmony_ci	select NEON if CPU_V7
1358c2ecf20Sopenharmony_ci	select PM
1368c2ecf20Sopenharmony_ci	select REGULATOR
1378c2ecf20Sopenharmony_ci	select REGULATOR_FIXED_VOLTAGE
1388c2ecf20Sopenharmony_ci	select TWL4030_CORE if ARCH_OMAP3 || ARCH_OMAP4
1398c2ecf20Sopenharmony_ci	select TWL4030_POWER if ARCH_OMAP3 || ARCH_OMAP4
1408c2ecf20Sopenharmony_ci	select VFP
1418c2ecf20Sopenharmony_ci	help
1428c2ecf20Sopenharmony_ci	  Compile a kernel suitable for booting most boards
1438c2ecf20Sopenharmony_ci
1448c2ecf20Sopenharmony_ciconfig SOC_HAS_OMAP2_SDRC
1458c2ecf20Sopenharmony_ci	bool "OMAP2 SDRAM Controller support"
1468c2ecf20Sopenharmony_ci
1478c2ecf20Sopenharmony_ciconfig SOC_HAS_REALTIME_COUNTER
1488c2ecf20Sopenharmony_ci	bool "Real time free running counter"
1498c2ecf20Sopenharmony_ci	depends on SOC_OMAP5 || SOC_DRA7XX
1508c2ecf20Sopenharmony_ci	default y
1518c2ecf20Sopenharmony_ci
1528c2ecf20Sopenharmony_cicomment "OMAP Core Type"
1538c2ecf20Sopenharmony_ci	depends on ARCH_OMAP2
1548c2ecf20Sopenharmony_ci
1558c2ecf20Sopenharmony_ciconfig SOC_OMAP2420
1568c2ecf20Sopenharmony_ci	bool "OMAP2420 support"
1578c2ecf20Sopenharmony_ci	depends on ARCH_OMAP2
1588c2ecf20Sopenharmony_ci	default y
1598c2ecf20Sopenharmony_ci	select OMAP_DM_TIMER
1608c2ecf20Sopenharmony_ci	select SOC_HAS_OMAP2_SDRC
1618c2ecf20Sopenharmony_ci
1628c2ecf20Sopenharmony_ciconfig SOC_OMAP2430
1638c2ecf20Sopenharmony_ci	bool "OMAP2430 support"
1648c2ecf20Sopenharmony_ci	depends on ARCH_OMAP2
1658c2ecf20Sopenharmony_ci	default y
1668c2ecf20Sopenharmony_ci	select SOC_HAS_OMAP2_SDRC
1678c2ecf20Sopenharmony_ci
1688c2ecf20Sopenharmony_ciconfig SOC_OMAP3430
1698c2ecf20Sopenharmony_ci	bool "OMAP3430 support"
1708c2ecf20Sopenharmony_ci	depends on ARCH_OMAP3
1718c2ecf20Sopenharmony_ci	default y
1728c2ecf20Sopenharmony_ci	select SOC_HAS_OMAP2_SDRC
1738c2ecf20Sopenharmony_ci
1748c2ecf20Sopenharmony_ciconfig SOC_TI81XX
1758c2ecf20Sopenharmony_ci	bool "TI81XX support"
1768c2ecf20Sopenharmony_ci	depends on ARCH_OMAP3
1778c2ecf20Sopenharmony_ci	default y
1788c2ecf20Sopenharmony_ci
1798c2ecf20Sopenharmony_ciconfig OMAP_PACKAGE_CBC
1808c2ecf20Sopenharmony_ci       bool
1818c2ecf20Sopenharmony_ci
1828c2ecf20Sopenharmony_ciconfig OMAP_PACKAGE_CBB
1838c2ecf20Sopenharmony_ci       bool
1848c2ecf20Sopenharmony_ci
1858c2ecf20Sopenharmony_ciconfig OMAP_PACKAGE_CUS
1868c2ecf20Sopenharmony_ci       bool
1878c2ecf20Sopenharmony_ci
1888c2ecf20Sopenharmony_ciconfig OMAP_PACKAGE_CBP
1898c2ecf20Sopenharmony_ci       bool
1908c2ecf20Sopenharmony_ci
1918c2ecf20Sopenharmony_cicomment "OMAP Legacy Platform Data Board Type"
1928c2ecf20Sopenharmony_ci	depends on ARCH_OMAP2PLUS
1938c2ecf20Sopenharmony_ci
1948c2ecf20Sopenharmony_ciconfig MACH_OMAP_GENERIC
1958c2ecf20Sopenharmony_ci	bool
1968c2ecf20Sopenharmony_ci
1978c2ecf20Sopenharmony_ciconfig MACH_OMAP2_TUSB6010
1988c2ecf20Sopenharmony_ci	bool
1998c2ecf20Sopenharmony_ci	depends on ARCH_OMAP2 && SOC_OMAP2420
2008c2ecf20Sopenharmony_ci	default y if MACH_NOKIA_N8X0
2018c2ecf20Sopenharmony_ci
2028c2ecf20Sopenharmony_ciconfig MACH_OMAP3517EVM
2038c2ecf20Sopenharmony_ci	bool "OMAP3517/ AM3517 EVM board"
2048c2ecf20Sopenharmony_ci	depends on ARCH_OMAP3
2058c2ecf20Sopenharmony_ci	default y
2068c2ecf20Sopenharmony_ci
2078c2ecf20Sopenharmony_ciconfig MACH_OMAP3_PANDORA
2088c2ecf20Sopenharmony_ci	bool "OMAP3 Pandora"
2098c2ecf20Sopenharmony_ci	depends on ARCH_OMAP3
2108c2ecf20Sopenharmony_ci	default y
2118c2ecf20Sopenharmony_ci	select OMAP_PACKAGE_CBB
2128c2ecf20Sopenharmony_ci
2138c2ecf20Sopenharmony_ciconfig MACH_NOKIA_N810
2148c2ecf20Sopenharmony_ci       bool
2158c2ecf20Sopenharmony_ci
2168c2ecf20Sopenharmony_ciconfig MACH_NOKIA_N810_WIMAX
2178c2ecf20Sopenharmony_ci       bool
2188c2ecf20Sopenharmony_ci
2198c2ecf20Sopenharmony_ciconfig MACH_NOKIA_N8X0
2208c2ecf20Sopenharmony_ci	bool "Nokia N800/N810"
2218c2ecf20Sopenharmony_ci	depends on SOC_OMAP2420
2228c2ecf20Sopenharmony_ci	default y
2238c2ecf20Sopenharmony_ci	select MACH_NOKIA_N810
2248c2ecf20Sopenharmony_ci	select MACH_NOKIA_N810_WIMAX
2258c2ecf20Sopenharmony_ci
2268c2ecf20Sopenharmony_ciconfig OMAP3_SDRC_AC_TIMING
2278c2ecf20Sopenharmony_ci	bool "Enable SDRC AC timing register changes"
2288c2ecf20Sopenharmony_ci	depends on ARCH_OMAP3
2298c2ecf20Sopenharmony_ci	help
2308c2ecf20Sopenharmony_ci	  If you know that none of your system initiators will attempt to
2318c2ecf20Sopenharmony_ci	  access SDRAM during CORE DVFS, select Y here.  This should boost
2328c2ecf20Sopenharmony_ci	  SDRAM performance at lower CORE OPPs.  There are relatively few
2338c2ecf20Sopenharmony_ci	  users who will wish to say yes at this point - almost everyone will
2348c2ecf20Sopenharmony_ci	  wish to say no.  Selecting yes without understanding what is
2358c2ecf20Sopenharmony_ci	  going on could result in system crashes;
2368c2ecf20Sopenharmony_ci
2378c2ecf20Sopenharmony_ciendmenu
2388c2ecf20Sopenharmony_ci
2398c2ecf20Sopenharmony_ciendif
2408c2ecf20Sopenharmony_ci
2418c2ecf20Sopenharmony_ciconfig OMAP5_ERRATA_801819
2428c2ecf20Sopenharmony_ci	bool "Errata 801819: An eviction from L1 data cache might stall indefinitely"
2438c2ecf20Sopenharmony_ci	depends on SOC_OMAP5 || SOC_DRA7XX
2448c2ecf20Sopenharmony_ci	help
2458c2ecf20Sopenharmony_ci	  A livelock can occur in the L2 cache arbitration that might prevent
2468c2ecf20Sopenharmony_ci	  a snoop from completing. Under certain conditions this can cause the
2478c2ecf20Sopenharmony_ci	  system to deadlock.
2488c2ecf20Sopenharmony_ci
2498c2ecf20Sopenharmony_ciendmenu
250