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