1# 2# ARM CPU Frequency scaling drivers 3# 4 5# big LITTLE core layer and glue drivers 6config ARM_BIG_LITTLE_CPUFREQ 7 tristate "Generic ARM big LITTLE CPUfreq driver" 8 depends on (ARM_CPU_TOPOLOGY || ARM64) && HAVE_CLK 9 # if CPU_THERMAL is on and THERMAL=m, ARM_BIT_LITTLE_CPUFREQ cannot be =y 10 depends on !CPU_THERMAL || THERMAL 11 select PM_OPP 12 help 13 This enables the Generic CPUfreq driver for ARM big.LITTLE platforms. 14 15config ARM_BRCMSTB_AVS_CPUFREQ 16 tristate "Broadcom STB AVS CPUfreq driver" 17 depends on ARCH_BRCMSTB || COMPILE_TEST 18 default y 19 help 20 Some Broadcom STB SoCs use a co-processor running proprietary firmware 21 ("AVS") to handle voltage and frequency scaling. This driver provides 22 a standard CPUfreq interface to to the firmware. 23 24 Say Y, if you have a Broadcom SoC with AVS support for DFS or DVFS. 25 26config ARM_BRCMSTB_AVS_CPUFREQ_DEBUG 27 bool "Broadcom STB AVS CPUfreq driver sysfs debug capability" 28 depends on ARM_BRCMSTB_AVS_CPUFREQ 29 help 30 Enabling this option turns on debug support via sysfs under 31 /sys/kernel/debug/brcmstb-avs-cpufreq. It is possible to read all and 32 write some AVS mailbox registers through sysfs entries. 33 34 If in doubt, say N. 35 36config ARM_DT_BL_CPUFREQ 37 tristate "Generic probing via DT for ARM big LITTLE CPUfreq driver" 38 depends on ARM_BIG_LITTLE_CPUFREQ && OF 39 help 40 This enables probing via DT for Generic CPUfreq driver for ARM 41 big.LITTLE platform. This gets frequency tables from DT. 42 43config ARM_VEXPRESS_SPC_CPUFREQ 44 tristate "Versatile Express SPC based CPUfreq driver" 45 depends on ARM_BIG_LITTLE_CPUFREQ && ARCH_VEXPRESS_SPC 46 help 47 This add the CPUfreq driver support for Versatile Express 48 big.LITTLE platforms using SPC for power management. 49 50config ARM_EXYNOS5440_CPUFREQ 51 tristate "SAMSUNG EXYNOS5440" 52 depends on SOC_EXYNOS5440 53 depends on HAVE_CLK && OF 54 select PM_OPP 55 default y 56 help 57 This adds the CPUFreq driver for Samsung EXYNOS5440 58 SoC. The nature of exynos5440 clock controller is 59 different than previous exynos controllers so not using 60 the common exynos framework. 61 62 If in doubt, say N. 63 64config ARM_HIGHBANK_CPUFREQ 65 tristate "Calxeda Highbank-based" 66 depends on ARCH_HIGHBANK && CPUFREQ_DT && REGULATOR 67 default m 68 help 69 This adds the CPUFreq driver for Calxeda Highbank SoC 70 based boards. 71 72 If in doubt, say N. 73 74config ARM_DB8500_CPUFREQ 75 tristate "ST-Ericsson DB8500 cpufreq" if COMPILE_TEST && !ARCH_U8500 76 default ARCH_U8500 77 depends on HAS_IOMEM 78 depends on !CPU_THERMAL || THERMAL 79 help 80 This adds the CPUFreq driver for ST-Ericsson Ux500 (DB8500) SoC 81 series. 82 83config ARM_IMX6Q_CPUFREQ 84 tristate "Freescale i.MX6 cpufreq support" 85 depends on ARCH_MXC 86 depends on REGULATOR_ANATOP 87 select PM_OPP 88 help 89 This adds cpufreq driver support for Freescale i.MX6 series SoCs. 90 91 If in doubt, say N. 92 93config ARM_KIRKWOOD_CPUFREQ 94 def_bool MACH_KIRKWOOD 95 help 96 This adds the CPUFreq driver for Marvell Kirkwood 97 SoCs. 98 99config ARM_MEDIATEK_CPUFREQ 100 tristate "CPU Frequency scaling support for MediaTek SoCs" 101 depends on ARCH_MEDIATEK && REGULATOR 102 depends on !CPU_THERMAL || THERMAL 103 select PM_OPP 104 help 105 This adds the CPUFreq driver support for MediaTek SoCs. 106 107config ARM_OMAP2PLUS_CPUFREQ 108 bool "TI OMAP2+" 109 depends on ARCH_OMAP2PLUS 110 default ARCH_OMAP2PLUS 111 112config ARM_S3C_CPUFREQ 113 bool 114 help 115 Internal configuration node for common cpufreq on Samsung SoC 116 117config ARM_S3C24XX_CPUFREQ 118 bool "CPUfreq driver for Samsung S3C24XX series CPUs (EXPERIMENTAL)" 119 depends on ARCH_S3C24XX 120 select ARM_S3C_CPUFREQ 121 help 122 This enables the CPUfreq driver for the Samsung S3C24XX family 123 of CPUs. 124 125 For details, take a look at <file:Documentation/cpu-freq>. 126 127 If in doubt, say N. 128 129config ARM_S3C24XX_CPUFREQ_DEBUG 130 bool "Debug CPUfreq Samsung driver core" 131 depends on ARM_S3C24XX_CPUFREQ 132 help 133 Enable s3c_freq_dbg for the Samsung S3C CPUfreq core 134 135config ARM_S3C24XX_CPUFREQ_IODEBUG 136 bool "Debug CPUfreq Samsung driver IO timing" 137 depends on ARM_S3C24XX_CPUFREQ 138 help 139 Enable s3c_freq_iodbg for the Samsung S3C CPUfreq core 140 141config ARM_S3C24XX_CPUFREQ_DEBUGFS 142 bool "Export debugfs for CPUFreq" 143 depends on ARM_S3C24XX_CPUFREQ && DEBUG_FS 144 help 145 Export status information via debugfs. 146 147config ARM_S3C2410_CPUFREQ 148 bool 149 depends on ARM_S3C24XX_CPUFREQ && CPU_S3C2410 150 select S3C2410_CPUFREQ_UTILS 151 help 152 CPU Frequency scaling support for S3C2410 153 154config ARM_S3C2412_CPUFREQ 155 bool 156 depends on ARM_S3C24XX_CPUFREQ && CPU_S3C2412 157 default y 158 select S3C2412_IOTIMING 159 help 160 CPU Frequency scaling support for S3C2412 and S3C2413 SoC CPUs. 161 162config ARM_S3C2416_CPUFREQ 163 bool "S3C2416 CPU Frequency scaling support" 164 depends on CPU_S3C2416 165 help 166 This adds the CPUFreq driver for the Samsung S3C2416 and 167 S3C2450 SoC. The S3C2416 supports changing the rate of the 168 armdiv clock source and also entering a so called dynamic 169 voltage scaling mode in which it is possible to reduce the 170 core voltage of the CPU. 171 172 If in doubt, say N. 173 174config ARM_S3C2416_CPUFREQ_VCORESCALE 175 bool "Allow voltage scaling for S3C2416 arm core" 176 depends on ARM_S3C2416_CPUFREQ && REGULATOR 177 help 178 Enable CPU voltage scaling when entering the dvs mode. 179 It uses information gathered through existing hardware and 180 tests but not documented in any datasheet. 181 182 If in doubt, say N. 183 184config ARM_S3C2440_CPUFREQ 185 bool "S3C2440/S3C2442 CPU Frequency scaling support" 186 depends on ARM_S3C24XX_CPUFREQ && (CPU_S3C2440 || CPU_S3C2442) 187 select S3C2410_CPUFREQ_UTILS 188 default y 189 help 190 CPU Frequency scaling support for S3C2440 and S3C2442 SoC CPUs. 191 192config ARM_S3C64XX_CPUFREQ 193 bool "Samsung S3C64XX" 194 depends on CPU_S3C6410 195 default y 196 help 197 This adds the CPUFreq driver for Samsung S3C6410 SoC. 198 199 If in doubt, say N. 200 201config ARM_S5PV210_CPUFREQ 202 bool "Samsung S5PV210 and S5PC110" 203 depends on CPU_S5PV210 204 default y 205 help 206 This adds the CPUFreq driver for Samsung S5PV210 and 207 S5PC110 SoCs. 208 209 If in doubt, say N. 210 211config ARM_SA1100_CPUFREQ 212 bool 213 214config ARM_SA1110_CPUFREQ 215 bool 216 217config ARM_SCPI_CPUFREQ 218 tristate "SCPI based CPUfreq driver" 219 depends on ARM_BIG_LITTLE_CPUFREQ && ARM_SCPI_PROTOCOL && COMMON_CLK_SCPI 220 help 221 This adds the CPUfreq driver support for ARM big.LITTLE platforms 222 using SCPI protocol for CPU power management. 223 224 This driver uses SCPI Message Protocol driver to interact with the 225 firmware providing the CPU DVFS functionality. 226 227config ARM_SPEAR_CPUFREQ 228 bool "SPEAr CPUFreq support" 229 depends on PLAT_SPEAR 230 default y 231 help 232 This adds the CPUFreq driver support for SPEAr SOCs. 233 234config ARM_STI_CPUFREQ 235 tristate "STi CPUFreq support" 236 depends on SOC_STIH407 237 help 238 This driver uses the generic OPP framework to match the running 239 platform with a predefined set of suitable values. If not provided 240 we will fall-back so safe-values contained in Device Tree. Enable 241 this config option if you wish to add CPUFreq support for STi based 242 SoCs. 243 244config ARM_TANGO_CPUFREQ 245 bool 246 depends on CPUFREQ_DT && ARCH_TANGO 247 default y 248 249config ARM_TEGRA20_CPUFREQ 250 bool "Tegra20 CPUFreq support" 251 depends on ARCH_TEGRA 252 default y 253 help 254 This adds the CPUFreq driver support for Tegra20 SOCs. 255 256config ARM_TEGRA124_CPUFREQ 257 tristate "Tegra124 CPUFreq support" 258 depends on ARCH_TEGRA && CPUFREQ_DT && REGULATOR 259 default y 260 help 261 This adds the CPUFreq driver support for Tegra124 SOCs. 262 263config ARM_TEGRA186_CPUFREQ 264 tristate "Tegra186 CPUFreq support" 265 depends on ARCH_TEGRA && TEGRA_BPMP 266 help 267 This adds the CPUFreq driver support for Tegra186 SOCs. 268 269config ARM_TI_CPUFREQ 270 bool "Texas Instruments CPUFreq support" 271 depends on ARCH_OMAP2PLUS 272 help 273 This driver enables valid OPPs on the running platform based on 274 values contained within the SoC in use. Enable this in order to 275 use the cpufreq-dt driver on all Texas Instruments platforms that 276 provide dt based operating-points-v2 tables with opp-supported-hw 277 data provided. Required for cpufreq support on AM335x, AM437x, 278 DRA7x, and AM57x platforms. 279 280config ARM_PXA2xx_CPUFREQ 281 tristate "Intel PXA2xx CPUfreq driver" 282 depends on PXA27x || PXA25x 283 help 284 This add the CPUFreq driver support for Intel PXA2xx SOCs. 285 286 If in doubt, say N. 287 288config ACPI_CPPC_CPUFREQ 289 tristate "CPUFreq driver based on the ACPI CPPC spec" 290 depends on ACPI_PROCESSOR 291 select ACPI_CPPC_LIB 292 default n 293 help 294 This adds a CPUFreq driver which uses CPPC methods 295 as described in the ACPIv5.1 spec. CPPC stands for 296 Collaborative Processor Performance Controls. It 297 is based on an abstract continuous scale of CPU 298 performance values which allows the remote power 299 processor to flexibly optimize for power and 300 performance. CPPC relies on power management firmware 301 support for its operation. 302 303 If in doubt, say N. 304