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_TEGRA20_CPUFREQ 245 bool "Tegra20 CPUFreq support" 246 depends on ARCH_TEGRA 247 default y 248 help 249 This adds the CPUFreq driver support for Tegra20 SOCs. 250 251config ARM_TEGRA124_CPUFREQ 252 tristate "Tegra124 CPUFreq support" 253 depends on ARCH_TEGRA && CPUFREQ_DT && REGULATOR 254 default y 255 help 256 This adds the CPUFreq driver support for Tegra124 SOCs. 257 258config ARM_TEGRA186_CPUFREQ 259 tristate "Tegra186 CPUFreq support" 260 depends on ARCH_TEGRA && TEGRA_BPMP 261 help 262 This adds the CPUFreq driver support for Tegra186 SOCs. 263 264config ARM_TI_CPUFREQ 265 bool "Texas Instruments CPUFreq support" 266 depends on ARCH_OMAP2PLUS 267 help 268 This driver enables valid OPPs on the running platform based on 269 values contained within the SoC in use. Enable this in order to 270 use the cpufreq-dt driver on all Texas Instruments platforms that 271 provide dt based operating-points-v2 tables with opp-supported-hw 272 data provided. Required for cpufreq support on AM335x, AM437x, 273 DRA7x, and AM57x platforms. 274 275config ARM_PXA2xx_CPUFREQ 276 tristate "Intel PXA2xx CPUfreq driver" 277 depends on PXA27x || PXA25x 278 help 279 This add the CPUFreq driver support for Intel PXA2xx SOCs. 280 281 If in doubt, say N. 282 283config ACPI_CPPC_CPUFREQ 284 tristate "CPUFreq driver based on the ACPI CPPC spec" 285 depends on ACPI_PROCESSOR 286 select ACPI_CPPC_LIB 287 default n 288 help 289 This adds a CPUFreq driver which uses CPPC methods 290 as described in the ACPIv5.1 spec. CPPC stands for 291 Collaborative Processor Performance Controls. It 292 is based on an abstract continuous scale of CPU 293 performance values which allows the remote power 294 processor to flexibly optimize for power and 295 performance. CPPC relies on power management firmware 296 support for its operation. 297 298 If in doubt, say N. 299