blob: 235a1ba73d92d577bbf605f5dab9d737fe246797 [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
Mark Brown109df082013-12-11 22:12:27 +00009 select PM_OPP
Viresh Kumar99af7712013-05-04 12:03:54 +053010 help
11 This enables the Generic CPUfreq driver for ARM big.LITTLE platforms.
Viresh Kumar8a67f0e2013-04-01 12:57:49 +000012
13config ARM_DT_BL_CPUFREQ
Viresh Kumar99af7712013-05-04 12:03:54 +053014 tristate "Generic probing via DT for ARM big LITTLE CPUfreq driver"
15 depends on ARM_BIG_LITTLE_CPUFREQ && OF
Viresh Kumar8a67f0e2013-04-01 12:57:49 +000016 help
Viresh Kumar99af7712013-05-04 12:03:54 +053017 This enables probing via DT for Generic CPUfreq driver for ARM
18 big.LITTLE platform. This gets frequency tables from DT.
Viresh Kumar8a67f0e2013-04-01 12:57:49 +000019
viresh kumar3b84d582014-03-14 12:10:54 +053020config ARM_VEXPRESS_SPC_CPUFREQ
21 tristate "Versatile Express SPC based CPUfreq driver"
22 depends on ARM_BIG_LITTLE_CPUFREQ && ARCH_VEXPRESS_SPC
23 help
24 This add the CPUfreq driver support for Versatile Express
25 big.LITTLE platforms using SPC for power management.
26
Arnd Bergmann8b2b4a42015-01-31 14:35:18 -040027config ARM_EXYNOS5440_CPUFREQ
28 tristate "SAMSUNG EXYNOS5440"
29 depends on SOC_EXYNOS5440
30 depends on HAVE_CLK && OF
31 select PM_OPP
32 default y
33 help
34 This adds the CPUFreq driver for Samsung EXYNOS5440
35 SoC. The nature of exynos5440 clock controller is
36 different than previous exynos controllers so not using
37 the common exynos framework.
38
39 If in doubt, say N.
40
Viresh Kumara0ea0482013-04-04 12:54:09 +000041config ARM_HIGHBANK_CPUFREQ
42 tristate "Calxeda Highbank-based"
Viresh Kumarbbcf0712014-09-09 19:58:03 +053043 depends on ARCH_HIGHBANK && CPUFREQ_DT && REGULATOR
Viresh Kumara0ea0482013-04-04 12:54:09 +000044 default m
45 help
46 This adds the CPUFreq driver for Calxeda Highbank SoC
47 based boards.
48
49 If in doubt, say N.
50
Leo Yan5acb9722015-03-30 13:26:37 +080051config ARM_HISI_ACPU_CPUFREQ
52 tristate "Hisilicon ACPU CPUfreq driver"
53 depends on ARCH_HISI && CPUFREQ_DT
54 select PM_OPP
55 help
56 This enables the hisilicon ACPU CPUfreq driver.
57
58 If in doubt, say N.
59
Viresh Kumara0ea0482013-04-04 12:54:09 +000060config ARM_IMX6Q_CPUFREQ
Shawn Guo1d0eaae2013-12-20 10:12:16 +080061 tristate "Freescale i.MX6 cpufreq support"
62 depends on ARCH_MXC
Viresh Kumara0ea0482013-04-04 12:54:09 +000063 depends on REGULATOR_ANATOP
Nicolas Del Piano7e021682014-07-13 18:59:00 -030064 select PM_OPP
Viresh Kumara0ea0482013-04-04 12:54:09 +000065 help
Shawn Guo1d0eaae2013-12-20 10:12:16 +080066 This adds cpufreq driver support for Freescale i.MX6 series SoCs.
Viresh Kumara0ea0482013-04-04 12:54:09 +000067
68 If in doubt, say N.
69
Viresh Kumarb7e614c2013-04-04 12:54:14 +000070config ARM_INTEGRATOR
71 tristate "CPUfreq driver for ARM Integrator CPUs"
72 depends on ARCH_INTEGRATOR
73 default y
74 help
75 This enables the CPUfreq driver for ARM Integrator CPUs.
76 If in doubt, say Y.
77
Viresh Kumara0ea0482013-04-04 12:54:09 +000078config ARM_KIRKWOOD_CPUFREQ
Andrew Lunn6c8df112014-08-30 18:46:12 +020079 def_bool MACH_KIRKWOOD
Viresh Kumara0ea0482013-04-04 12:54:09 +000080 help
81 This adds the CPUFreq driver for Marvell Kirkwood
82 SoCs.
83
Pi-Cheng Chen14538632015-08-19 10:05:06 +080084config ARM_MT8173_CPUFREQ
85 bool "Mediatek MT8173 CPUFreq support"
86 depends on ARCH_MEDIATEK && REGULATOR
Arnd Bergmann2d4ee302015-11-16 22:27:55 +010087 depends on ARM64 || (ARM_CPU_TOPOLOGY && COMPILE_TEST)
Guenter Roeck5269e702015-09-03 08:20:58 -070088 depends on !CPU_THERMAL || THERMAL=y
Pi-Cheng Chen14538632015-08-19 10:05:06 +080089 select PM_OPP
90 help
91 This adds the CPUFreq driver support for Mediatek MT8173 SoC.
92
Russell Kingb09db452012-02-15 11:01:11 -080093config ARM_OMAP2PLUS_CPUFREQ
94 bool "TI OMAP2+"
Kevin Hilman2d59dcf2012-04-13 13:32:30 -070095 depends on ARCH_OMAP2PLUS
Russell Kingb09db452012-02-15 11:01:11 -080096 default ARCH_OMAP2PLUS
Russell Kingb09db452012-02-15 11:01:11 -080097
Viresh Kumarf023f8d2013-04-04 12:54:15 +000098config ARM_S3C_CPUFREQ
99 bool
100 help
101 Internal configuration node for common cpufreq on Samsung SoC
102
103config ARM_S3C24XX_CPUFREQ
104 bool "CPUfreq driver for Samsung S3C24XX series CPUs (EXPERIMENTAL)"
105 depends on ARCH_S3C24XX
106 select ARM_S3C_CPUFREQ
107 help
108 This enables the CPUfreq driver for the Samsung S3C24XX family
109 of CPUs.
110
111 For details, take a look at <file:Documentation/cpu-freq>.
112
113 If in doubt, say N.
114
115config ARM_S3C24XX_CPUFREQ_DEBUG
116 bool "Debug CPUfreq Samsung driver core"
117 depends on ARM_S3C24XX_CPUFREQ
118 help
119 Enable s3c_freq_dbg for the Samsung S3C CPUfreq core
120
121config ARM_S3C24XX_CPUFREQ_IODEBUG
122 bool "Debug CPUfreq Samsung driver IO timing"
123 depends on ARM_S3C24XX_CPUFREQ
124 help
125 Enable s3c_freq_iodbg for the Samsung S3C CPUfreq core
126
127config ARM_S3C24XX_CPUFREQ_DEBUGFS
128 bool "Export debugfs for CPUFreq"
129 depends on ARM_S3C24XX_CPUFREQ && DEBUG_FS
130 help
131 Export status information via debugfs.
132
133config ARM_S3C2410_CPUFREQ
134 bool
135 depends on ARM_S3C24XX_CPUFREQ && CPU_S3C2410
136 select S3C2410_CPUFREQ_UTILS
137 help
138 CPU Frequency scaling support for S3C2410
139
140config ARM_S3C2412_CPUFREQ
141 bool
142 depends on ARM_S3C24XX_CPUFREQ && CPU_S3C2412
143 default y
144 select S3C2412_IOTIMING
145 help
146 CPU Frequency scaling support for S3C2412 and S3C2413 SoC CPUs.
147
Heiko Stübner34ee55072012-02-16 11:42:32 +0100148config ARM_S3C2416_CPUFREQ
149 bool "S3C2416 CPU Frequency scaling support"
150 depends on CPU_S3C2416
151 help
152 This adds the CPUFreq driver for the Samsung S3C2416 and
153 S3C2450 SoC. The S3C2416 supports changing the rate of the
154 armdiv clock source and also entering a so called dynamic
155 voltage scaling mode in which it is possible to reduce the
Stratos Karafotis735dc242014-04-22 22:40:10 +0300156 core voltage of the CPU.
Heiko Stübner34ee55072012-02-16 11:42:32 +0100157
158 If in doubt, say N.
159
160config ARM_S3C2416_CPUFREQ_VCORESCALE
Kees Cook0f194b562012-10-02 11:16:53 -0700161 bool "Allow voltage scaling for S3C2416 arm core"
162 depends on ARM_S3C2416_CPUFREQ && REGULATOR
Heiko Stübner34ee55072012-02-16 11:42:32 +0100163 help
164 Enable CPU voltage scaling when entering the dvs mode.
165 It uses information gathered through existing hardware and
166 tests but not documented in any datasheet.
167
168 If in doubt, say N.
169
Viresh Kumarf023f8d2013-04-04 12:54:15 +0000170config ARM_S3C2440_CPUFREQ
171 bool "S3C2440/S3C2442 CPU Frequency scaling support"
172 depends on ARM_S3C24XX_CPUFREQ && (CPU_S3C2440 || CPU_S3C2442)
173 select S3C2410_CPUFREQ_UTILS
174 default y
175 help
176 CPU Frequency scaling support for S3C2440 and S3C2442 SoC CPUs.
177
Kukjin Kim15964d32011-06-06 18:43:01 -0700178config ARM_S3C64XX_CPUFREQ
179 bool "Samsung S3C64XX"
180 depends on CPU_S3C6410
181 default y
182 help
183 This adds the CPUFreq driver for Samsung S3C6410 SoC.
184
185 If in doubt, say N.
186
Kukjin Kimf7d77072011-06-01 14:18:22 -0700187config ARM_S5PV210_CPUFREQ
188 bool "Samsung S5PV210 and S5PC110"
189 depends on CPU_S5PV210
190 default y
191 help
192 This adds the CPUFreq driver for Samsung S5PV210 and
193 S5PC110 SoCs.
194
195 If in doubt, say N.
196
Viresh Kumar59a2e612013-04-04 12:54:16 +0000197config ARM_SA1100_CPUFREQ
198 bool
199
200config ARM_SA1110_CPUFREQ
201 bool
202
Sudeep Holla8def3102015-03-30 10:59:52 +0100203config ARM_SCPI_CPUFREQ
204 tristate "SCPI based CPUfreq driver"
Punit Agrawal73124ce2015-11-18 13:52:44 +0000205 depends on ARM_BIG_LITTLE_CPUFREQ && ARM_SCPI_PROTOCOL && COMMON_CLK_SCPI
Sudeep Holla8def3102015-03-30 10:59:52 +0100206 help
207 This adds the CPUfreq driver support for ARM big.LITTLE platforms
208 using SCPI protocol for CPU power management.
209
210 This driver uses SCPI Message Protocol driver to interact with the
211 firmware providing the CPU DVFS functionality.
212
Deepak Sikri42099322012-11-27 14:05:26 +0100213config ARM_SPEAR_CPUFREQ
214 bool "SPEAr CPUFreq support"
215 depends on PLAT_SPEAR
216 default y
217 help
218 This adds the CPUFreq driver support for SPEAr SOCs.
Viresh Kumardbb8d762013-06-12 12:05:48 +0530219
Tuomas Tynkkynen109e13e2015-05-13 17:58:47 +0300220config ARM_TEGRA20_CPUFREQ
221 bool "Tegra20 CPUFreq support"
Viresh Kumardbb8d762013-06-12 12:05:48 +0530222 depends on ARCH_TEGRA
Viresh Kumardbb8d762013-06-12 12:05:48 +0530223 default y
224 help
Tuomas Tynkkynen109e13e2015-05-13 17:58:47 +0300225 This adds the CPUFreq driver support for Tegra20 SOCs.
Petr Cvek608eab22014-11-24 04:59:26 +0100226
Tuomas Tynkkynen9eb15db2015-05-13 17:58:48 +0300227config ARM_TEGRA124_CPUFREQ
228 tristate "Tegra124 CPUFreq support"
229 depends on ARCH_TEGRA && CPUFREQ_DT
230 default y
231 help
232 This adds the CPUFreq driver support for Tegra124 SOCs.
233
Petr Cvek608eab22014-11-24 04:59:26 +0100234config ARM_PXA2xx_CPUFREQ
235 tristate "Intel PXA2xx CPUfreq driver"
236 depends on PXA27x || PXA25x
237 help
238 This add the CPUFreq driver support for Intel PXA2xx SOCs.
239
240 If in doubt, say N.
Ashwin Chaugule5477fb32015-10-02 10:04:01 -0400241
242config ACPI_CPPC_CPUFREQ
243 tristate "CPUFreq driver based on the ACPI CPPC spec"
244 depends on ACPI
245 select ACPI_CPPC_LIB
246 default n
247 help
248 This adds a CPUFreq driver which uses CPPC methods
249 as described in the ACPIv5.1 spec. CPPC stands for
250 Collaborative Processor Performance Controls. It
251 is based on an abstract continuous scale of CPU
252 performance values which allows the remote power
253 processor to flexibly optimize for power and
254 performance. CPPC relies on power management firmware
255 support for its operation.
256
257 If in doubt, say N.