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_DT_BL_CPUFREQ 27 tristate "Generic probing via DT for ARM big LITTLE CPUfreq driver" 28 depends on ARM_BIG_LITTLE_CPUFREQ && OF 29 help 30 This enables probing via DT for Generic CPUfreq driver for ARM 31 big.LITTLE platform. This gets frequency tables from DT. 32 33config ARM_VEXPRESS_SPC_CPUFREQ 34 tristate "Versatile Express SPC based CPUfreq driver" 35 depends on ARM_BIG_LITTLE_CPUFREQ && ARCH_VEXPRESS_SPC 36 help 37 This add the CPUfreq driver support for Versatile Express 38 big.LITTLE platforms using SPC for power management. 39 40config ARM_EXYNOS5440_CPUFREQ 41 tristate "SAMSUNG EXYNOS5440" 42 depends on SOC_EXYNOS5440 43 depends on HAVE_CLK && OF 44 select PM_OPP 45 default y 46 help 47 This adds the CPUFreq driver for Samsung EXYNOS5440 48 SoC. The nature of exynos5440 clock controller is 49 different than previous exynos controllers so not using 50 the common exynos framework. 51 52 If in doubt, say N. 53 54config ARM_HIGHBANK_CPUFREQ 55 tristate "Calxeda Highbank-based" 56 depends on ARCH_HIGHBANK && CPUFREQ_DT && REGULATOR 57 default m 58 help 59 This adds the CPUFreq driver for Calxeda Highbank SoC 60 based boards. 61 62 If in doubt, say N. 63 64config ARM_IMX6Q_CPUFREQ 65 tristate "Freescale i.MX6 cpufreq support" 66 depends on ARCH_MXC 67 depends on REGULATOR_ANATOP 68 select PM_OPP 69 help 70 This adds cpufreq driver support for Freescale i.MX6 series SoCs. 71 72 If in doubt, say N. 73 74config ARM_KIRKWOOD_CPUFREQ 75 def_bool MACH_KIRKWOOD 76 help 77 This adds the CPUFreq driver for Marvell Kirkwood 78 SoCs. 79 80config ARM_MT8173_CPUFREQ 81 tristate "Mediatek MT8173 CPUFreq support" 82 depends on ARCH_MEDIATEK && REGULATOR 83 depends on ARM64 || (ARM_CPU_TOPOLOGY && COMPILE_TEST) 84 depends on !CPU_THERMAL || THERMAL 85 select PM_OPP 86 help 87 This adds the CPUFreq driver support for Mediatek MT8173 SoC. 88 89config ARM_OMAP2PLUS_CPUFREQ 90 bool "TI OMAP2+" 91 depends on ARCH_OMAP2PLUS 92 default ARCH_OMAP2PLUS 93 94config ARM_S3C_CPUFREQ 95 bool 96 help 97 Internal configuration node for common cpufreq on Samsung SoC 98 99config ARM_S3C24XX_CPUFREQ 100 bool "CPUfreq driver for Samsung S3C24XX series CPUs (EXPERIMENTAL)" 101 depends on ARCH_S3C24XX 102 select ARM_S3C_CPUFREQ 103 help 104 This enables the CPUfreq driver for the Samsung S3C24XX family 105 of CPUs. 106 107 For details, take a look at <file:Documentation/cpu-freq>. 108 109 If in doubt, say N. 110 111config ARM_S3C24XX_CPUFREQ_DEBUG 112 bool "Debug CPUfreq Samsung driver core" 113 depends on ARM_S3C24XX_CPUFREQ 114 help 115 Enable s3c_freq_dbg for the Samsung S3C CPUfreq core 116 117config ARM_S3C24XX_CPUFREQ_IODEBUG 118 bool "Debug CPUfreq Samsung driver IO timing" 119 depends on ARM_S3C24XX_CPUFREQ 120 help 121 Enable s3c_freq_iodbg for the Samsung S3C CPUfreq core 122 123config ARM_S3C24XX_CPUFREQ_DEBUGFS 124 bool "Export debugfs for CPUFreq" 125 depends on ARM_S3C24XX_CPUFREQ && DEBUG_FS 126 help 127 Export status information via debugfs. 128 129config ARM_S3C2410_CPUFREQ 130 bool 131 depends on ARM_S3C24XX_CPUFREQ && CPU_S3C2410 132 select S3C2410_CPUFREQ_UTILS 133 help 134 CPU Frequency scaling support for S3C2410 135 136config ARM_S3C2412_CPUFREQ 137 bool 138 depends on ARM_S3C24XX_CPUFREQ && CPU_S3C2412 139 default y 140 select S3C2412_IOTIMING 141 help 142 CPU Frequency scaling support for S3C2412 and S3C2413 SoC CPUs. 143 144config ARM_S3C2416_CPUFREQ 145 bool "S3C2416 CPU Frequency scaling support" 146 depends on CPU_S3C2416 147 help 148 This adds the CPUFreq driver for the Samsung S3C2416 and 149 S3C2450 SoC. The S3C2416 supports changing the rate of the 150 armdiv clock source and also entering a so called dynamic 151 voltage scaling mode in which it is possible to reduce the 152 core voltage of the CPU. 153 154 If in doubt, say N. 155 156config ARM_S3C2416_CPUFREQ_VCORESCALE 157 bool "Allow voltage scaling for S3C2416 arm core" 158 depends on ARM_S3C2416_CPUFREQ && REGULATOR 159 help 160 Enable CPU voltage scaling when entering the dvs mode. 161 It uses information gathered through existing hardware and 162 tests but not documented in any datasheet. 163 164 If in doubt, say N. 165 166config ARM_S3C2440_CPUFREQ 167 bool "S3C2440/S3C2442 CPU Frequency scaling support" 168 depends on ARM_S3C24XX_CPUFREQ && (CPU_S3C2440 || CPU_S3C2442) 169 select S3C2410_CPUFREQ_UTILS 170 default y 171 help 172 CPU Frequency scaling support for S3C2440 and S3C2442 SoC CPUs. 173 174config ARM_S3C64XX_CPUFREQ 175 bool "Samsung S3C64XX" 176 depends on CPU_S3C6410 177 default y 178 help 179 This adds the CPUFreq driver for Samsung S3C6410 SoC. 180 181 If in doubt, say N. 182 183config ARM_S5PV210_CPUFREQ 184 bool "Samsung S5PV210 and S5PC110" 185 depends on CPU_S5PV210 186 default y 187 help 188 This adds the CPUFreq driver for Samsung S5PV210 and 189 S5PC110 SoCs. 190 191 If in doubt, say N. 192 193config ARM_SA1100_CPUFREQ 194 bool 195 196config ARM_SA1110_CPUFREQ 197 bool 198 199config ARM_SCPI_CPUFREQ 200 tristate "SCPI based CPUfreq driver" 201 depends on ARM_BIG_LITTLE_CPUFREQ && ARM_SCPI_PROTOCOL && COMMON_CLK_SCPI 202 help 203 This adds the CPUfreq driver support for ARM big.LITTLE platforms 204 using SCPI protocol for CPU power management. 205 206 This driver uses SCPI Message Protocol driver to interact with the 207 firmware providing the CPU DVFS functionality. 208 209config ARM_SPEAR_CPUFREQ 210 bool "SPEAr CPUFreq support" 211 depends on PLAT_SPEAR 212 default y 213 help 214 This adds the CPUFreq driver support for SPEAr SOCs. 215 216config ARM_STI_CPUFREQ 217 tristate "STi CPUFreq support" 218 depends on SOC_STIH407 219 help 220 This driver uses the generic OPP framework to match the running 221 platform with a predefined set of suitable values. If not provided 222 we will fall-back so safe-values contained in Device Tree. Enable 223 this config option if you wish to add CPUFreq support for STi based 224 SoCs. 225 226config ARM_TEGRA20_CPUFREQ 227 bool "Tegra20 CPUFreq support" 228 depends on ARCH_TEGRA 229 default y 230 help 231 This adds the CPUFreq driver support for Tegra20 SOCs. 232 233config ARM_TEGRA124_CPUFREQ 234 tristate "Tegra124 CPUFreq support" 235 depends on ARCH_TEGRA && CPUFREQ_DT && REGULATOR 236 default y 237 help 238 This adds the CPUFreq driver support for Tegra124 SOCs. 239 240config ARM_PXA2xx_CPUFREQ 241 tristate "Intel PXA2xx CPUfreq driver" 242 depends on PXA27x || PXA25x 243 help 244 This add the CPUFreq driver support for Intel PXA2xx SOCs. 245 246 If in doubt, say N. 247 248config ACPI_CPPC_CPUFREQ 249 tristate "CPUFreq driver based on the ACPI CPPC spec" 250 depends on ACPI 251 select ACPI_CPPC_LIB 252 default n 253 help 254 This adds a CPUFreq driver which uses CPPC methods 255 as described in the ACPIv5.1 spec. CPPC stands for 256 Collaborative Processor Performance Controls. It 257 is based on an abstract continuous scale of CPU 258 performance values which allows the remote power 259 processor to flexibly optimize for power and 260 performance. CPPC relies on power management firmware 261 support for its operation. 262 263 If in doubt, say N. 264