2 # ARM CPU Frequency scaling drivers
5 # big LITTLE core layer
and glue drivers
6 config ARM_BIG_LITTLE_CPUFREQ
7 tristate
"Generic ARM big LITTLE CPUfreq driver"
8 depends on
(ARM_CPU_TOPOLOGY || ARM64
) && HAVE_CLK
9 # if CPU_THERMAL is on
and THERMAL
=m
, ARM_BIT_LITTLE_CPUFREQ cannot be
=y
10 depends on
!CPU_THERMAL || THERMAL
13 This enables the Generic CPUfreq driver for ARM big.LITTLE platforms.
15 config ARM_BRCMSTB_AVS_CPUFREQ
16 tristate
"Broadcom STB AVS CPUfreq driver"
17 depends on ARCH_BRCMSTB || COMPILE_TEST
20 Some Broadcom STB SoCs use a co
-processor running proprietary firmware
21 ("AVS") to handle voltage
and frequency scaling. This driver provides
22 a standard CPUfreq interface to to the firmware.
24 Say Y
, if you have a Broadcom SoC with AVS support for DFS or DVFS.
26 config ARM_BRCMSTB_AVS_CPUFREQ_DEBUG
27 bool
"Broadcom STB AVS CPUfreq driver sysfs debug capability"
28 depends on ARM_BRCMSTB_AVS_CPUFREQ
30 Enabling this option turns on debug support via sysfs under
31 /sys
/kernel
/debug
/brcmstb
-avs
-cpufreq. It is possible to read all
and
32 write some AVS mailbox registers through sysfs entries.
36 config ARM_DT_BL_CPUFREQ
37 tristate
"Generic probing via DT for ARM big LITTLE CPUfreq driver"
38 depends on ARM_BIG_LITTLE_CPUFREQ
&& OF
40 This enables probing via DT for Generic CPUfreq driver for ARM
41 big.LITTLE platform. This gets frequency tables from DT.
43 config ARM_VEXPRESS_SPC_CPUFREQ
44 tristate
"Versatile Express SPC based CPUfreq driver"
45 depends on ARM_BIG_LITTLE_CPUFREQ
&& ARCH_VEXPRESS_SPC
47 This
add the CPUfreq driver support for Versatile Express
48 big.LITTLE platforms using SPC for power management.
50 config ARM_EXYNOS5440_CPUFREQ
51 tristate
"SAMSUNG EXYNOS5440"
52 depends on SOC_EXYNOS5440
53 depends on HAVE_CLK
&& OF
57 This adds the CPUFreq driver for Samsung EXYNOS5440
58 SoC. The nature of exynos5440 clock controller is
59 different than previous exynos controllers so not using
60 the common exynos framework.
64 config ARM_HIGHBANK_CPUFREQ
65 tristate
"Calxeda Highbank-based"
66 depends on ARCH_HIGHBANK
&& CPUFREQ_DT
&& REGULATOR
69 This adds the CPUFreq driver for Calxeda Highbank SoC
74 config ARM_IMX6Q_CPUFREQ
75 tristate
"Freescale i.MX6 cpufreq support"
77 depends on REGULATOR_ANATOP
80 This adds cpufreq driver support for Freescale i.MX6 series SoCs.
84 config ARM_KIRKWOOD_CPUFREQ
85 def_bool MACH_KIRKWOOD
87 This adds the CPUFreq driver for Marvell Kirkwood
90 config ARM_MT8173_CPUFREQ
91 tristate
"Mediatek MT8173 CPUFreq support"
92 depends on ARCH_MEDIATEK
&& REGULATOR
93 depends on ARM64 ||
(ARM_CPU_TOPOLOGY
&& COMPILE_TEST
)
94 depends on
!CPU_THERMAL || THERMAL
97 This adds the CPUFreq driver support for Mediatek MT8173 SoC.
99 config ARM_OMAP2PLUS_CPUFREQ
101 depends on ARCH_OMAP2PLUS
102 default ARCH_OMAP2PLUS
104 config ARM_S3C_CPUFREQ
107 Internal configuration node for common cpufreq on Samsung SoC
109 config ARM_S3C24XX_CPUFREQ
110 bool
"CPUfreq driver for Samsung S3C24XX series CPUs (EXPERIMENTAL)"
111 depends on ARCH_S3C24XX
112 select ARM_S3C_CPUFREQ
114 This enables the CPUfreq driver for the Samsung S3C24XX family
117 For details
, take a look at
<file
:Documentation
/cpu
-freq
>.
121 config ARM_S3C24XX_CPUFREQ_DEBUG
122 bool
"Debug CPUfreq Samsung driver core"
123 depends on ARM_S3C24XX_CPUFREQ
125 Enable s3c_freq_dbg for the Samsung S3C CPUfreq core
127 config ARM_S3C24XX_CPUFREQ_IODEBUG
128 bool
"Debug CPUfreq Samsung driver IO timing"
129 depends on ARM_S3C24XX_CPUFREQ
131 Enable s3c_freq_iodbg for the Samsung S3C CPUfreq core
133 config ARM_S3C24XX_CPUFREQ_DEBUGFS
134 bool
"Export debugfs for CPUFreq"
135 depends on ARM_S3C24XX_CPUFREQ
&& DEBUG_FS
137 Export status information via debugfs.
139 config ARM_S3C2410_CPUFREQ
141 depends on ARM_S3C24XX_CPUFREQ
&& CPU_S3C2410
142 select S3C2410_CPUFREQ_UTILS
144 CPU Frequency scaling support for S3C2410
146 config ARM_S3C2412_CPUFREQ
148 depends on ARM_S3C24XX_CPUFREQ
&& CPU_S3C2412
150 select S3C2412_IOTIMING
152 CPU Frequency scaling support for S3C2412
and S3C2413 SoC CPUs.
154 config ARM_S3C2416_CPUFREQ
155 bool
"S3C2416 CPU Frequency scaling support"
156 depends on CPU_S3C2416
158 This adds the CPUFreq driver for the Samsung S3C2416
and
159 S3C2450 SoC. The S3C2416 supports changing the rate of the
160 armdiv clock source
and also entering a so called dynamic
161 voltage scaling mode in which it is possible to reduce the
162 core voltage of the CPU.
166 config ARM_S3C2416_CPUFREQ_VCORESCALE
167 bool
"Allow voltage scaling for S3C2416 arm core"
168 depends on ARM_S3C2416_CPUFREQ
&& REGULATOR
170 Enable CPU voltage scaling when entering the dvs mode.
171 It uses information gathered through existing hardware
and
172 tests but not documented in any datasheet.
176 config ARM_S3C2440_CPUFREQ
177 bool
"S3C2440/S3C2442 CPU Frequency scaling support"
178 depends on ARM_S3C24XX_CPUFREQ
&& (CPU_S3C2440 || CPU_S3C2442
)
179 select S3C2410_CPUFREQ_UTILS
182 CPU Frequency scaling support for S3C2440
and S3C2442 SoC CPUs.
184 config ARM_S3C64XX_CPUFREQ
185 bool
"Samsung S3C64XX"
186 depends on CPU_S3C6410
189 This adds the CPUFreq driver for Samsung S3C6410 SoC.
193 config ARM_S5PV210_CPUFREQ
194 bool
"Samsung S5PV210 and S5PC110"
195 depends on CPU_S5PV210
198 This adds the CPUFreq driver for Samsung S5PV210
and
203 config ARM_SA1100_CPUFREQ
206 config ARM_SA1110_CPUFREQ
209 config ARM_SCPI_CPUFREQ
210 tristate
"SCPI based CPUfreq driver"
211 depends on ARM_BIG_LITTLE_CPUFREQ
&& ARM_SCPI_PROTOCOL
&& COMMON_CLK_SCPI
213 This adds the CPUfreq driver support for ARM big.LITTLE platforms
214 using SCPI protocol for CPU power management.
216 This driver uses SCPI Message Protocol driver to interact with the
217 firmware providing the CPU DVFS functionality.
219 config ARM_SPEAR_CPUFREQ
220 bool
"SPEAr CPUFreq support"
221 depends on PLAT_SPEAR
224 This adds the CPUFreq driver support for SPEAr SOCs.
226 config ARM_STI_CPUFREQ
227 tristate
"STi CPUFreq support"
228 depends on SOC_STIH407
230 This driver uses the generic OPP framework to match the running
231 platform with a predefined set of suitable values. If not provided
232 we will fall
-back so safe
-values contained in Device Tree. Enable
233 this config option if you wish to
add CPUFreq support for STi based
236 config ARM_TEGRA20_CPUFREQ
237 bool
"Tegra20 CPUFreq support"
238 depends on ARCH_TEGRA
241 This adds the CPUFreq driver support for Tegra20 SOCs.
243 config ARM_TEGRA124_CPUFREQ
244 tristate
"Tegra124 CPUFreq support"
245 depends on ARCH_TEGRA
&& CPUFREQ_DT
&& REGULATOR
248 This adds the CPUFreq driver support for Tegra124 SOCs.
250 config ARM_PXA2xx_CPUFREQ
251 tristate
"Intel PXA2xx CPUfreq driver"
252 depends on PXA27x || PXA25x
254 This
add the CPUFreq driver support for Intel PXA2xx SOCs.
258 config ACPI_CPPC_CPUFREQ
259 tristate
"CPUFreq driver based on the ACPI CPPC spec"
264 This adds a CPUFreq driver which uses CPPC methods
265 as described in the ACPIv5.1 spec. CPPC stands for
266 Collaborative Processor Performance Controls. It
267 is based on an abstract continuous scale of CPU
268 performance values which allows the
remote power
269 processor to flexibly optimize for power
and
270 performance. CPPC relies on power management firmware
271 support for its operation.