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