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