1# SPDX-License-Identifier: GPL-2.0-only 2menu "TI OMAP/AM/DM/DRA Family" 3 depends on ARCH_MULTI_V6 || ARCH_MULTI_V7 4 5config OMAP_HWMOD 6 bool 7 8config 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 16config ARCH_OMAP3 17 bool "TI OMAP3" 18 depends on ARCH_MULTI_V7 19 select ARCH_OMAP2PLUS 20 select ARM_CPU_SUSPEND 21 select OMAP_HWMOD 22 select OMAP_INTERCONNECT 23 select PM_OPP 24 select SOC_HAS_OMAP2_SDRC 25 select ARM_ERRATA_430973 26 27config ARCH_OMAP4 28 bool "TI OMAP4" 29 depends on ARCH_MULTI_V7 30 select ARCH_OMAP2PLUS 31 select ARCH_NEEDS_CPU_IDLE_COUPLED if SMP 32 select ARM_CPU_SUSPEND 33 select ARM_ERRATA_720789 34 select ARM_GIC 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 41 select PM_OPP 42 select PM if CPU_IDLE 43 select ARM_ERRATA_754322 44 select ARM_ERRATA_775420 45 select OMAP_INTERCONNECT 46 47config SOC_OMAP5 48 bool "TI OMAP5" 49 depends on ARCH_MULTI_V7 50 select ARCH_OMAP2PLUS 51 select ARM_CPU_SUSPEND 52 select ARM_GIC 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 58 select PM_OPP 59 select ZONE_DMA if ARM_LPAE 60 61config SOC_AM33XX 62 bool "TI AM33XX" 63 depends on ARCH_MULTI_V7 64 select ARCH_OMAP2PLUS 65 select ARM_CPU_SUSPEND 66 67config SOC_AM43XX 68 bool "TI AM43x" 69 depends on ARCH_MULTI_V7 70 select ARCH_OMAP2PLUS 71 select ARM_GIC 72 select MACH_OMAP_GENERIC 73 select HAVE_ARM_SCU 74 select GENERIC_CLOCKEVENTS_BROADCAST 75 select HAVE_ARM_TWD 76 select ARM_ERRATA_754322 77 select ARM_ERRATA_775420 78 select OMAP_INTERCONNECT 79 select ARM_CPU_SUSPEND 80 81config SOC_DRA7XX 82 bool "TI DRA7XX" 83 depends on ARCH_MULTI_V7 84 select ARCH_OMAP2PLUS 85 select ARM_CPU_SUSPEND 86 select ARM_GIC 87 select HAVE_ARM_SCU if SMP 88 select HAVE_ARM_ARCH_TIMER 89 select IRQ_CROSSBAR 90 select ARM_ERRATA_798181 if SMP 91 select OMAP_INTERCONNECT 92 select OMAP_INTERCONNECT_BARRIER 93 select PM_OPP 94 select ZONE_DMA if ARM_LPAE 95 select PINCTRL_TI_IODELAY if OF && PINCTRL 96 97config ARCH_OMAP2PLUS 98 bool 99 select ARCH_HAS_BANDGAP 100 select ARCH_HAS_RESET_CONTROLLER 101 select ARCH_OMAP 102 select CLKSRC_MMIO 103 select GENERIC_IRQ_CHIP 104 select GPIOLIB 105 select MACH_OMAP_GENERIC 106 select MEMORY 107 select MFD_SYSCON 108 select OMAP_DM_SYSTIMER 109 select OMAP_DM_TIMER 110 select OMAP_GPMC 111 select PINCTRL 112 select PM 113 select PM_GENERIC_DOMAINS 114 select PM_GENERIC_DOMAINS_OF 115 select RESET_CONTROLLER 116 select SOC_BUS 117 select TI_SYSC 118 select OMAP_IRQCHIP 119 select CLKSRC_TI_32K 120 help 121 Systems based on OMAP2, OMAP3, OMAP4 or OMAP5 122 123config OMAP_INTERCONNECT_BARRIER 124 bool 125 select ARM_HEAVY_MB 126 127config ARCH_OMAP 128 bool 129 130if ARCH_OMAP2PLUS 131 132menu "TI OMAP2/3/4 Specific Features" 133 134config 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 REGULATOR 144 select REGULATOR_FIXED_VOLTAGE 145 select TWL4030_CORE if ARCH_OMAP3 || ARCH_OMAP4 146 select TWL4030_POWER if ARCH_OMAP3 || ARCH_OMAP4 147 select VFP 148 help 149 Compile a kernel suitable for booting most boards 150 151config SOC_HAS_OMAP2_SDRC 152 bool "OMAP2 SDRAM Controller support" 153 154config SOC_HAS_REALTIME_COUNTER 155 bool "Real time free running counter" 156 depends on SOC_OMAP5 || SOC_DRA7XX 157 default y 158 159config POWER_AVS_OMAP 160 bool "AVS(Adaptive Voltage Scaling) support for OMAP IP versions 1&2" 161 depends on (ARCH_OMAP3 || ARCH_OMAP4) && PM 162 select POWER_SUPPLY 163 help 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 169 and OMAP4430 170 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, 174 user must write 1 to 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. 180 181config POWER_AVS_OMAP_CLASS3 182 bool "Class 3 mode of Smartreflex Implementation" 183 depends on POWER_AVS_OMAP && TWL4030_CORE 184 help 185 Say Y to enable Class 3 implementation of Smartreflex 186 187 Class 3 implementation of Smartreflex employs continuous hardware 188 voltage calibration. 189 190config 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 193 help 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. 198 199config 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 202 default 43 203 help 204 PPA routine service ID for setting L2 auxiliary control register. 205 206comment "OMAP Core Type" 207 depends on ARCH_OMAP2 208 209config SOC_OMAP2420 210 bool "OMAP2420 support" 211 depends on ARCH_OMAP2 212 default y 213 select OMAP_DM_SYSTIMER 214 select OMAP_DM_TIMER 215 select SOC_HAS_OMAP2_SDRC 216 217config SOC_OMAP2430 218 bool "OMAP2430 support" 219 depends on ARCH_OMAP2 220 default y 221 select SOC_HAS_OMAP2_SDRC 222 223config SOC_OMAP3430 224 bool "OMAP3430 support" 225 depends on ARCH_OMAP3 226 default y 227 select SOC_HAS_OMAP2_SDRC 228 229config SOC_TI81XX 230 bool "TI81XX support" 231 depends on ARCH_OMAP3 232 default y 233 234comment "OMAP Legacy Platform Data Board Type" 235 depends on ARCH_OMAP2PLUS 236 237config MACH_OMAP_GENERIC 238 bool 239 240config MACH_OMAP2_TUSB6010 241 bool 242 depends on ARCH_OMAP2 && SOC_OMAP2420 243 default y if MACH_NOKIA_N8X0 244 245config MACH_NOKIA_N810 246 bool 247 248config MACH_NOKIA_N810_WIMAX 249 bool 250 251config MACH_NOKIA_N8X0 252 bool "Nokia N800/N810" 253 depends on SOC_OMAP2420 254 default y 255 select MACH_NOKIA_N810 256 select MACH_NOKIA_N810_WIMAX 257 258endmenu 259 260endif 261 262config OMAP5_ERRATA_801819 263 bool "Errata 801819: An eviction from L1 data cache might stall indefinitely" 264 depends on SOC_OMAP5 || SOC_DRA7XX 265 help 266 A livelock can occur in the L2 cache arbitration that might prevent 267 a snoop from completing. Under certain conditions this can cause the 268 system to deadlock. 269 270endmenu 271