blob: 80fbfb32b5a9913a481b079e51574ac0c037a4de [file] [log] [blame]
Kukjin Kimf7d77072011-06-01 14:18:22 -07001#
2# ARM CPU Frequency scaling drivers
3#
4
viresh kumar3b84d582014-03-14 12:10:54 +05305# big LITTLE core layer and glue drivers
Viresh Kumar8a67f0e2013-04-01 12:57:49 +00006config ARM_BIG_LITTLE_CPUFREQ
Viresh Kumar99af7712013-05-04 12:03:54 +05307 tristate "Generic ARM big LITTLE CPUfreq driver"
Sudeep Holla14730142015-05-13 13:35:52 +01008 depends on (ARM_CPU_TOPOLOGY || ARM64) && HAVE_CLK
Punit Agrawal2f7e8a12015-11-17 12:06:23 +00009 # if CPU_THERMAL is on and THERMAL=m, ARM_BIT_LITTLE_CPUFREQ cannot be =y
10 depends on !CPU_THERMAL || THERMAL
Mark Brown109df082013-12-11 22:12:27 +000011 select PM_OPP
Viresh Kumar99af7712013-05-04 12:03:54 +053012 help
13 This enables the Generic CPUfreq driver for ARM big.LITTLE platforms.
Viresh Kumar8a67f0e2013-04-01 12:57:49 +000014
15config ARM_DT_BL_CPUFREQ
Viresh Kumar99af7712013-05-04 12:03:54 +053016 tristate "Generic probing via DT for ARM big LITTLE CPUfreq driver"
17 depends on ARM_BIG_LITTLE_CPUFREQ && OF
Viresh Kumar8a67f0e2013-04-01 12:57:49 +000018 help
Viresh Kumar99af7712013-05-04 12:03:54 +053019 This enables probing via DT for Generic CPUfreq driver for ARM
20 big.LITTLE platform. This gets frequency tables from DT.
Viresh Kumar8a67f0e2013-04-01 12:57:49 +000021
viresh kumar3b84d582014-03-14 12:10:54 +053022config ARM_VEXPRESS_SPC_CPUFREQ
23 tristate "Versatile Express SPC based CPUfreq driver"
24 depends on ARM_BIG_LITTLE_CPUFREQ && ARCH_VEXPRESS_SPC
25 help
26 This add the CPUfreq driver support for Versatile Express
27 big.LITTLE platforms using SPC for power management.
28
Arnd Bergmann8b2b4a42015-01-31 14:35:18 -040029config ARM_EXYNOS5440_CPUFREQ
30 tristate "SAMSUNG EXYNOS5440"
31 depends on SOC_EXYNOS5440
32 depends on HAVE_CLK && OF
33 select PM_OPP
34 default y
35 help
36 This adds the CPUFreq driver for Samsung EXYNOS5440
37 SoC. The nature of exynos5440 clock controller is
38 different than previous exynos controllers so not using
39 the common exynos framework.
40
41 If in doubt, say N.
42
Viresh Kumara0ea0482013-04-04 12:54:09 +000043config ARM_HIGHBANK_CPUFREQ
44 tristate "Calxeda Highbank-based"
Viresh Kumarbbcf0712014-09-09 19:58:03 +053045 depends on ARCH_HIGHBANK && CPUFREQ_DT && REGULATOR
Viresh Kumara0ea0482013-04-04 12:54:09 +000046 default m
47 help
48 This adds the CPUFreq driver for Calxeda Highbank SoC
49 based boards.
50
51 If in doubt, say N.
52
Leo Yan5acb9722015-03-30 13:26:37 +080053config ARM_HISI_ACPU_CPUFREQ
54 tristate "Hisilicon ACPU CPUfreq driver"
55 depends on ARCH_HISI && CPUFREQ_DT
56 select PM_OPP
57 help
58 This enables the hisilicon ACPU CPUfreq driver.
59
60 If in doubt, say N.
61
Viresh Kumara0ea0482013-04-04 12:54:09 +000062config ARM_IMX6Q_CPUFREQ
Shawn Guo1d0eaae2013-12-20 10:12:16 +080063 tristate "Freescale i.MX6 cpufreq support"
64 depends on ARCH_MXC
Viresh Kumara0ea0482013-04-04 12:54:09 +000065 depends on REGULATOR_ANATOP
Nicolas Del Piano7e021682014-07-13 18:59:00 -030066 select PM_OPP
Viresh Kumara0ea0482013-04-04 12:54:09 +000067 help
Shawn Guo1d0eaae2013-12-20 10:12:16 +080068 This adds cpufreq driver support for Freescale i.MX6 series SoCs.
Viresh Kumara0ea0482013-04-04 12:54:09 +000069
70 If in doubt, say N.
71
Viresh Kumarb7e614c2013-04-04 12:54:14 +000072config ARM_INTEGRATOR
73 tristate "CPUfreq driver for ARM Integrator CPUs"
74 depends on ARCH_INTEGRATOR
75 default y
76 help
77 This enables the CPUfreq driver for ARM Integrator CPUs.
78 If in doubt, say Y.
79
Viresh Kumara0ea0482013-04-04 12:54:09 +000080config ARM_KIRKWOOD_CPUFREQ
Andrew Lunn6c8df112014-08-30 18:46:12 +020081 def_bool MACH_KIRKWOOD
Viresh Kumara0ea0482013-04-04 12:54:09 +000082 help
83 This adds the CPUFreq driver for Marvell Kirkwood
84 SoCs.
85
Pi-Cheng Chen14538632015-08-19 10:05:06 +080086config ARM_MT8173_CPUFREQ
87 bool "Mediatek MT8173 CPUFreq support"
88 depends on ARCH_MEDIATEK && REGULATOR
Arnd Bergmann2d4ee302015-11-16 22:27:55 +010089 depends on ARM64 || (ARM_CPU_TOPOLOGY && COMPILE_TEST)
Guenter Roeck5269e702015-09-03 08:20:58 -070090 depends on !CPU_THERMAL || THERMAL=y
Pi-Cheng Chen14538632015-08-19 10:05:06 +080091 select PM_OPP
92 help
93 This adds the CPUFreq driver support for Mediatek MT8173 SoC.
94
Russell Kingb09db452012-02-15 11:01:11 -080095config ARM_OMAP2PLUS_CPUFREQ
96 bool "TI OMAP2+"
Kevin Hilman2d59dcf2012-04-13 13:32:30 -070097 depends on ARCH_OMAP2PLUS
Russell Kingb09db452012-02-15 11:01:11 -080098 default ARCH_OMAP2PLUS
Russell Kingb09db452012-02-15 11:01:11 -080099
Viresh Kumarf023f8d2013-04-04 12:54:15 +0000100config ARM_S3C_CPUFREQ
101 bool
102 help
103 Internal configuration node for common cpufreq on Samsung SoC
104
105config ARM_S3C24XX_CPUFREQ
106 bool "CPUfreq driver for Samsung S3C24XX series CPUs (EXPERIMENTAL)"
107 depends on ARCH_S3C24XX
108 select ARM_S3C_CPUFREQ
109 help
110 This enables the CPUfreq driver for the Samsung S3C24XX family
111 of CPUs.
112
113 For details, take a look at <file:Documentation/cpu-freq>.
114
115 If in doubt, say N.
116
117config ARM_S3C24XX_CPUFREQ_DEBUG
118 bool "Debug CPUfreq Samsung driver core"
119 depends on ARM_S3C24XX_CPUFREQ
120 help
121 Enable s3c_freq_dbg for the Samsung S3C CPUfreq core
122
123config ARM_S3C24XX_CPUFREQ_IODEBUG
124 bool "Debug CPUfreq Samsung driver IO timing"
125 depends on ARM_S3C24XX_CPUFREQ
126 help
127 Enable s3c_freq_iodbg for the Samsung S3C CPUfreq core
128
129config ARM_S3C24XX_CPUFREQ_DEBUGFS
130 bool "Export debugfs for CPUFreq"
131 depends on ARM_S3C24XX_CPUFREQ && DEBUG_FS
132 help
133 Export status information via debugfs.
134
135config ARM_S3C2410_CPUFREQ
136 bool
137 depends on ARM_S3C24XX_CPUFREQ && CPU_S3C2410
138 select S3C2410_CPUFREQ_UTILS
139 help
140 CPU Frequency scaling support for S3C2410
141
142config ARM_S3C2412_CPUFREQ
143 bool
144 depends on ARM_S3C24XX_CPUFREQ && CPU_S3C2412
145 default y
146 select S3C2412_IOTIMING
147 help
148 CPU Frequency scaling support for S3C2412 and S3C2413 SoC CPUs.
149
Heiko Stübner34ee55072012-02-16 11:42:32 +0100150config ARM_S3C2416_CPUFREQ
151 bool "S3C2416 CPU Frequency scaling support"
152 depends on CPU_S3C2416
153 help
154 This adds the CPUFreq driver for the Samsung S3C2416 and
155 S3C2450 SoC. The S3C2416 supports changing the rate of the
156 armdiv clock source and also entering a so called dynamic
157 voltage scaling mode in which it is possible to reduce the
Stratos Karafotis735dc242014-04-22 22:40:10 +0300158 core voltage of the CPU.
Heiko Stübner34ee55072012-02-16 11:42:32 +0100159
160 If in doubt, say N.
161
162config ARM_S3C2416_CPUFREQ_VCORESCALE
Kees Cook0f194b52012-10-02 11:16:53 -0700163 bool "Allow voltage scaling for S3C2416 arm core"
164 depends on ARM_S3C2416_CPUFREQ && REGULATOR
Heiko Stübner34ee55072012-02-16 11:42:32 +0100165 help
166 Enable CPU voltage scaling when entering the dvs mode.
167 It uses information gathered through existing hardware and
168 tests but not documented in any datasheet.
169
170 If in doubt, say N.
171
Viresh Kumarf023f8d2013-04-04 12:54:15 +0000172config ARM_S3C2440_CPUFREQ
173 bool "S3C2440/S3C2442 CPU Frequency scaling support"
174 depends on ARM_S3C24XX_CPUFREQ && (CPU_S3C2440 || CPU_S3C2442)
175 select S3C2410_CPUFREQ_UTILS
176 default y
177 help
178 CPU Frequency scaling support for S3C2440 and S3C2442 SoC CPUs.
179
Kukjin Kim15964d32011-06-06 18:43:01 -0700180config ARM_S3C64XX_CPUFREQ
181 bool "Samsung S3C64XX"
182 depends on CPU_S3C6410
183 default y
184 help
185 This adds the CPUFreq driver for Samsung S3C6410 SoC.
186
187 If in doubt, say N.
188
Kukjin Kimf7d77072011-06-01 14:18:22 -0700189config ARM_S5PV210_CPUFREQ
190 bool "Samsung S5PV210 and S5PC110"
191 depends on CPU_S5PV210
192 default y
193 help
194 This adds the CPUFreq driver for Samsung S5PV210 and
195 S5PC110 SoCs.
196
197 If in doubt, say N.
198
Viresh Kumar59a2e612013-04-04 12:54:16 +0000199config ARM_SA1100_CPUFREQ
200 bool
201
202config ARM_SA1110_CPUFREQ
203 bool
204
Sudeep Holla8def3102015-03-30 10:59:52 +0100205config ARM_SCPI_CPUFREQ
206 tristate "SCPI based CPUfreq driver"
Punit Agrawal73124ce2015-11-18 13:52:44 +0000207 depends on ARM_BIG_LITTLE_CPUFREQ && ARM_SCPI_PROTOCOL && COMMON_CLK_SCPI
Sudeep Holla8def3102015-03-30 10:59:52 +0100208 help
209 This adds the CPUfreq driver support for ARM big.LITTLE platforms
210 using SCPI protocol for CPU power management.
211
212 This driver uses SCPI Message Protocol driver to interact with the
213 firmware providing the CPU DVFS functionality.
214
Deepak Sikri42099322012-11-27 14:05:26 +0100215config ARM_SPEAR_CPUFREQ
216 bool "SPEAr CPUFreq support"
217 depends on PLAT_SPEAR
218 default y
219 help
220 This adds the CPUFreq driver support for SPEAr SOCs.
Viresh Kumardbb8d762013-06-12 12:05:48 +0530221
Tuomas Tynkkynen109e13e2015-05-13 17:58:47 +0300222config ARM_TEGRA20_CPUFREQ
223 bool "Tegra20 CPUFreq support"
Viresh Kumardbb8d762013-06-12 12:05:48 +0530224 depends on ARCH_TEGRA
Viresh Kumardbb8d762013-06-12 12:05:48 +0530225 default y
226 help
Tuomas Tynkkynen109e13e2015-05-13 17:58:47 +0300227 This adds the CPUFreq driver support for Tegra20 SOCs.
Petr Cvek608eab22014-11-24 04:59:26 +0100228
Tuomas Tynkkynen9eb15db2015-05-13 17:58:48 +0300229config ARM_TEGRA124_CPUFREQ
230 tristate "Tegra124 CPUFreq support"
231 depends on ARCH_TEGRA && CPUFREQ_DT
232 default y
233 help
234 This adds the CPUFreq driver support for Tegra124 SOCs.
235
Petr Cvek608eab22014-11-24 04:59:26 +0100236config ARM_PXA2xx_CPUFREQ
237 tristate "Intel PXA2xx CPUfreq driver"
238 depends on PXA27x || PXA25x
239 help
240 This add the CPUFreq driver support for Intel PXA2xx SOCs.
241
242 If in doubt, say N.
Ashwin Chaugule5477fb32015-10-02 10:04:01 -0400243
244config ACPI_CPPC_CPUFREQ
245 tristate "CPUFreq driver based on the ACPI CPPC spec"
246 depends on ACPI
247 select ACPI_CPPC_LIB
248 default n
249 help
250 This adds a CPUFreq driver which uses CPPC methods
251 as described in the ACPIv5.1 spec. CPPC stands for
252 Collaborative Processor Performance Controls. It
253 is based on an abstract continuous scale of CPU
254 performance values which allows the remote power
255 processor to flexibly optimize for power and
256 performance. CPPC relies on power management firmware
257 support for its operation.
258
259 If in doubt, say N.