2 # ARM CPU Frequency scaling drivers
5 config ACPI_CPPC_CPUFREQ
6 tristate "CPUFreq driver based on the ACPI CPPC spec"
7 depends on ACPI_PROCESSOR
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.
21 config ARM_ARMADA_37XX_CPUFREQ
22 tristate "Armada 37xx CPUFreq support"
23 depends on ARCH_MVEBU && CPUFREQ_DT
25 This adds the CPUFreq driver support for Marvell Armada 37xx SoCs.
26 The Armada 37xx PMU supports 4 frequency and VDD levels.
28 # big LITTLE core layer and glue drivers
29 config 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
36 This enables the Generic CPUfreq driver for ARM big.LITTLE platforms.
38 config ARM_SCPI_CPUFREQ
39 tristate "SCPI based CPUfreq driver"
40 depends on ARM_SCPI_PROTOCOL && COMMON_CLK_SCPI
41 depends on !CPU_THERMAL || THERMAL
43 This adds the CPUfreq driver support for ARM platforms using SCPI
44 protocol for CPU power management.
46 This driver uses SCPI Message Protocol driver to interact with the
47 firmware providing the CPU DVFS functionality.
49 config ARM_VEXPRESS_SPC_CPUFREQ
50 tristate "Versatile Express SPC based CPUfreq driver"
51 depends on ARM_BIG_LITTLE_CPUFREQ && ARCH_VEXPRESS_SPC
53 This add the CPUfreq driver support for Versatile Express
54 big.LITTLE platforms using SPC for power management.
56 config ARM_BRCMSTB_AVS_CPUFREQ
57 tristate "Broadcom STB AVS CPUfreq driver"
58 depends on ARCH_BRCMSTB || COMPILE_TEST
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.
65 Say Y, if you have a Broadcom SoC with AVS support for DFS or DVFS.
67 config ARM_HIGHBANK_CPUFREQ
68 tristate "Calxeda Highbank-based"
69 depends on ARCH_HIGHBANK && CPUFREQ_DT && REGULATOR
72 This adds the CPUFreq driver for Calxeda Highbank SoC
77 config ARM_IMX6Q_CPUFREQ
78 tristate "Freescale i.MX6 cpufreq support"
80 depends on REGULATOR_ANATOP
83 This adds cpufreq driver support for Freescale i.MX6 series SoCs.
87 config ARM_KIRKWOOD_CPUFREQ
88 def_bool MACH_KIRKWOOD
90 This adds the CPUFreq driver for Marvell Kirkwood
93 config ARM_MEDIATEK_CPUFREQ
94 tristate "CPU Frequency scaling support for MediaTek SoCs"
95 depends on ARCH_MEDIATEK && REGULATOR
96 depends on !CPU_THERMAL || THERMAL
99 This adds the CPUFreq driver support for MediaTek SoCs.
101 config ARM_OMAP2PLUS_CPUFREQ
103 depends on ARCH_OMAP2PLUS
104 default ARCH_OMAP2PLUS
106 config ARM_QCOM_CPUFREQ_KRYO
107 tristate "Qualcomm Kryo based CPUFreq"
109 depends on QCOM_QFPROM
113 This adds the CPUFreq driver for Qualcomm Kryo SoC based boards.
117 config ARM_S3C_CPUFREQ
120 Internal configuration node for common cpufreq on Samsung SoC
122 config ARM_S3C24XX_CPUFREQ
123 bool "CPUfreq driver for Samsung S3C24XX series CPUs (EXPERIMENTAL)"
124 depends on ARCH_S3C24XX
125 select ARM_S3C_CPUFREQ
127 This enables the CPUfreq driver for the Samsung S3C24XX family
130 For details, take a look at <file:Documentation/cpu-freq>.
134 config ARM_S3C24XX_CPUFREQ_DEBUG
135 bool "Debug CPUfreq Samsung driver core"
136 depends on ARM_S3C24XX_CPUFREQ
138 Enable s3c_freq_dbg for the Samsung S3C CPUfreq core
140 config ARM_S3C24XX_CPUFREQ_IODEBUG
141 bool "Debug CPUfreq Samsung driver IO timing"
142 depends on ARM_S3C24XX_CPUFREQ
144 Enable s3c_freq_iodbg for the Samsung S3C CPUfreq core
146 config ARM_S3C24XX_CPUFREQ_DEBUGFS
147 bool "Export debugfs for CPUFreq"
148 depends on ARM_S3C24XX_CPUFREQ && DEBUG_FS
150 Export status information via debugfs.
152 config ARM_S3C2410_CPUFREQ
154 depends on ARM_S3C24XX_CPUFREQ && CPU_S3C2410
155 select S3C2410_CPUFREQ_UTILS
157 CPU Frequency scaling support for S3C2410
159 config ARM_S3C2412_CPUFREQ
161 depends on ARM_S3C24XX_CPUFREQ && CPU_S3C2412
163 select S3C2412_IOTIMING
165 CPU Frequency scaling support for S3C2412 and S3C2413 SoC CPUs.
167 config ARM_S3C2416_CPUFREQ
168 bool "S3C2416 CPU Frequency scaling support"
169 depends on CPU_S3C2416
171 This adds the CPUFreq driver for the Samsung S3C2416 and
172 S3C2450 SoC. The S3C2416 supports changing the rate of the
173 armdiv clock source and also entering a so called dynamic
174 voltage scaling mode in which it is possible to reduce the
175 core voltage of the CPU.
179 config ARM_S3C2416_CPUFREQ_VCORESCALE
180 bool "Allow voltage scaling for S3C2416 arm core"
181 depends on ARM_S3C2416_CPUFREQ && REGULATOR
183 Enable CPU voltage scaling when entering the dvs mode.
184 It uses information gathered through existing hardware and
185 tests but not documented in any datasheet.
189 config ARM_S3C2440_CPUFREQ
190 bool "S3C2440/S3C2442 CPU Frequency scaling support"
191 depends on ARM_S3C24XX_CPUFREQ && (CPU_S3C2440 || CPU_S3C2442)
192 select S3C2410_CPUFREQ_UTILS
195 CPU Frequency scaling support for S3C2440 and S3C2442 SoC CPUs.
197 config ARM_S3C64XX_CPUFREQ
198 bool "Samsung S3C64XX"
199 depends on CPU_S3C6410
202 This adds the CPUFreq driver for Samsung S3C6410 SoC.
206 config ARM_S5PV210_CPUFREQ
207 bool "Samsung S5PV210 and S5PC110"
208 depends on CPU_S5PV210
211 This adds the CPUFreq driver for Samsung S5PV210 and
216 config ARM_SA1100_CPUFREQ
219 config ARM_SA1110_CPUFREQ
222 config ARM_SCMI_CPUFREQ
223 tristate "SCMI based CPUfreq driver"
224 depends on ARM_SCMI_PROTOCOL || COMPILE_TEST
225 depends on !CPU_THERMAL || THERMAL
228 This adds the CPUfreq driver support for ARM platforms using SCMI
229 protocol for CPU power management.
231 This driver uses SCMI Message Protocol driver to interact with the
232 firmware providing the CPU DVFS functionality.
234 config ARM_SPEAR_CPUFREQ
235 bool "SPEAr CPUFreq support"
236 depends on PLAT_SPEAR
239 This adds the CPUFreq driver support for SPEAr SOCs.
241 config ARM_STI_CPUFREQ
242 tristate "STi CPUFreq support"
243 depends on SOC_STIH407
245 This driver uses the generic OPP framework to match the running
246 platform with a predefined set of suitable values. If not provided
247 we will fall-back so safe-values contained in Device Tree. Enable
248 this config option if you wish to add CPUFreq support for STi based
251 config ARM_TANGO_CPUFREQ
253 depends on CPUFREQ_DT && ARCH_TANGO
256 config ARM_TEGRA20_CPUFREQ
257 tristate "Tegra20 CPUFreq support"
258 depends on ARCH_TEGRA
261 This adds the CPUFreq driver support for Tegra20 SOCs.
263 config ARM_TEGRA124_CPUFREQ
264 tristate "Tegra124 CPUFreq support"
265 depends on ARCH_TEGRA && CPUFREQ_DT && REGULATOR
268 This adds the CPUFreq driver support for Tegra124 SOCs.
270 config ARM_TEGRA186_CPUFREQ
271 tristate "Tegra186 CPUFreq support"
272 depends on ARCH_TEGRA && TEGRA_BPMP
274 This adds the CPUFreq driver support for Tegra186 SOCs.
276 config ARM_TI_CPUFREQ
277 bool "Texas Instruments CPUFreq support"
278 depends on ARCH_OMAP2PLUS
280 This driver enables valid OPPs on the running platform based on
281 values contained within the SoC in use. Enable this in order to
282 use the cpufreq-dt driver on all Texas Instruments platforms that
283 provide dt based operating-points-v2 tables with opp-supported-hw
284 data provided. Required for cpufreq support on AM335x, AM437x,
285 DRA7x, and AM57x platforms.
287 config ARM_PXA2xx_CPUFREQ
288 tristate "Intel PXA2xx CPUfreq driver"
289 depends on PXA27x || PXA25x
291 This add the CPUFreq driver support for Intel PXA2xx SOCs.