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 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_HIGHBANK_CPUFREQ 75 tristate "Calxeda Highbank-based" 76 depends on ARCH_HIGHBANK && CPUFREQ_DT && REGULATOR 77 default m 78 help 79 This adds the CPUFreq driver for Calxeda Highbank SoC 80 based boards. 81 82 If in doubt, say N. 83 84config ARM_IMX6Q_CPUFREQ 85 tristate "Freescale i.MX6 cpufreq support" 86 depends on ARCH_MXC 87 depends on REGULATOR_ANATOP 88 select PM_OPP 89 help 90 This adds cpufreq driver support for Freescale i.MX6 series SoCs. 91 92 If in doubt, say N. 93 94config ARM_KIRKWOOD_CPUFREQ 95 def_bool MACH_KIRKWOOD 96 help 97 This adds the CPUFreq driver for Marvell Kirkwood 98 SoCs. 99 100config ARM_MEDIATEK_CPUFREQ 101 tristate "CPU Frequency scaling support for MediaTek SoCs" 102 depends on ARCH_MEDIATEK && REGULATOR 103 depends on !CPU_THERMAL || THERMAL 104 select PM_OPP 105 help 106 This adds the CPUFreq driver support for MediaTek SoCs. 107 108config ARM_OMAP2PLUS_CPUFREQ 109 bool "TI OMAP2+" 110 depends on ARCH_OMAP2PLUS 111 default ARCH_OMAP2PLUS 112 113config ARM_QCOM_CPUFREQ_KRYO 114 tristate "Qualcomm Kryo based CPUFreq" 115 depends on ARM64 116 depends on QCOM_QFPROM 117 depends on QCOM_SMEM 118 select PM_OPP 119 help 120 This adds the CPUFreq driver for Qualcomm Kryo SoC based boards. 121 122 If in doubt, say N. 123 124config ARM_S3C_CPUFREQ 125 bool 126 help 127 Internal configuration node for common cpufreq on Samsung SoC 128 129config ARM_S3C24XX_CPUFREQ 130 bool "CPUfreq driver for Samsung S3C24XX series CPUs (EXPERIMENTAL)" 131 depends on ARCH_S3C24XX 132 select ARM_S3C_CPUFREQ 133 help 134 This enables the CPUfreq driver for the Samsung S3C24XX family 135 of CPUs. 136 137 For details, take a look at <file:Documentation/cpu-freq>. 138 139 If in doubt, say N. 140 141config ARM_S3C24XX_CPUFREQ_DEBUG 142 bool "Debug CPUfreq Samsung driver core" 143 depends on ARM_S3C24XX_CPUFREQ 144 help 145 Enable s3c_freq_dbg for the Samsung S3C CPUfreq core 146 147config ARM_S3C24XX_CPUFREQ_IODEBUG 148 bool "Debug CPUfreq Samsung driver IO timing" 149 depends on ARM_S3C24XX_CPUFREQ 150 help 151 Enable s3c_freq_iodbg for the Samsung S3C CPUfreq core 152 153config ARM_S3C24XX_CPUFREQ_DEBUGFS 154 bool "Export debugfs for CPUFreq" 155 depends on ARM_S3C24XX_CPUFREQ && DEBUG_FS 156 help 157 Export status information via debugfs. 158 159config ARM_S3C2410_CPUFREQ 160 bool 161 depends on ARM_S3C24XX_CPUFREQ && CPU_S3C2410 162 select S3C2410_CPUFREQ_UTILS 163 help 164 CPU Frequency scaling support for S3C2410 165 166config ARM_S3C2412_CPUFREQ 167 bool 168 depends on ARM_S3C24XX_CPUFREQ && CPU_S3C2412 169 default y 170 select S3C2412_IOTIMING 171 help 172 CPU Frequency scaling support for S3C2412 and S3C2413 SoC CPUs. 173 174config ARM_S3C2416_CPUFREQ 175 bool "S3C2416 CPU Frequency scaling support" 176 depends on CPU_S3C2416 177 help 178 This adds the CPUFreq driver for the Samsung S3C2416 and 179 S3C2450 SoC. The S3C2416 supports changing the rate of the 180 armdiv clock source and also entering a so called dynamic 181 voltage scaling mode in which it is possible to reduce the 182 core voltage of the CPU. 183 184 If in doubt, say N. 185 186config ARM_S3C2416_CPUFREQ_VCORESCALE 187 bool "Allow voltage scaling for S3C2416 arm core" 188 depends on ARM_S3C2416_CPUFREQ && REGULATOR 189 help 190 Enable CPU voltage scaling when entering the dvs mode. 191 It uses information gathered through existing hardware and 192 tests but not documented in any datasheet. 193 194 If in doubt, say N. 195 196config ARM_S3C2440_CPUFREQ 197 bool "S3C2440/S3C2442 CPU Frequency scaling support" 198 depends on ARM_S3C24XX_CPUFREQ && (CPU_S3C2440 || CPU_S3C2442) 199 select S3C2410_CPUFREQ_UTILS 200 default y 201 help 202 CPU Frequency scaling support for S3C2440 and S3C2442 SoC CPUs. 203 204config ARM_S3C64XX_CPUFREQ 205 bool "Samsung S3C64XX" 206 depends on CPU_S3C6410 207 default y 208 help 209 This adds the CPUFreq driver for Samsung S3C6410 SoC. 210 211 If in doubt, say N. 212 213config ARM_S5PV210_CPUFREQ 214 bool "Samsung S5PV210 and S5PC110" 215 depends on CPU_S5PV210 216 default y 217 help 218 This adds the CPUFreq driver for Samsung S5PV210 and 219 S5PC110 SoCs. 220 221 If in doubt, say N. 222 223config ARM_SA1100_CPUFREQ 224 bool 225 226config ARM_SA1110_CPUFREQ 227 bool 228 229config ARM_SCMI_CPUFREQ 230 tristate "SCMI based CPUfreq driver" 231 depends on ARM_SCMI_PROTOCOL || COMPILE_TEST 232 depends on !CPU_THERMAL || THERMAL 233 select PM_OPP 234 help 235 This adds the CPUfreq driver support for ARM platforms using SCMI 236 protocol for CPU power management. 237 238 This driver uses SCMI Message Protocol driver to interact with the 239 firmware providing the CPU DVFS functionality. 240 241config ARM_SPEAR_CPUFREQ 242 bool "SPEAr CPUFreq support" 243 depends on PLAT_SPEAR 244 default y 245 help 246 This adds the CPUFreq driver support for SPEAr SOCs. 247 248config ARM_STI_CPUFREQ 249 tristate "STi CPUFreq support" 250 depends on SOC_STIH407 251 help 252 This driver uses the generic OPP framework to match the running 253 platform with a predefined set of suitable values. If not provided 254 we will fall-back so safe-values contained in Device Tree. Enable 255 this config option if you wish to add CPUFreq support for STi based 256 SoCs. 257 258config ARM_TANGO_CPUFREQ 259 bool 260 depends on CPUFREQ_DT && ARCH_TANGO 261 default y 262 263config ARM_TEGRA20_CPUFREQ 264 tristate "Tegra20 CPUFreq support" 265 depends on ARCH_TEGRA 266 default y 267 help 268 This adds the CPUFreq driver support for Tegra20 SOCs. 269 270config ARM_TEGRA124_CPUFREQ 271 tristate "Tegra124 CPUFreq support" 272 depends on ARCH_TEGRA && CPUFREQ_DT && REGULATOR 273 default y 274 help 275 This adds the CPUFreq driver support for Tegra124 SOCs. 276 277config ARM_TEGRA186_CPUFREQ 278 tristate "Tegra186 CPUFreq support" 279 depends on ARCH_TEGRA && TEGRA_BPMP 280 help 281 This adds the CPUFreq driver support for Tegra186 SOCs. 282 283config ARM_TI_CPUFREQ 284 bool "Texas Instruments CPUFreq support" 285 depends on ARCH_OMAP2PLUS 286 help 287 This driver enables valid OPPs on the running platform based on 288 values contained within the SoC in use. Enable this in order to 289 use the cpufreq-dt driver on all Texas Instruments platforms that 290 provide dt based operating-points-v2 tables with opp-supported-hw 291 data provided. Required for cpufreq support on AM335x, AM437x, 292 DRA7x, and AM57x platforms. 293 294config ARM_PXA2xx_CPUFREQ 295 tristate "Intel PXA2xx CPUfreq driver" 296 depends on PXA27x || PXA25x 297 help 298 This add the CPUFreq driver support for Intel PXA2xx SOCs. 299 300 If in doubt, say N. 301