blob: 96b35b8b36060f4af9eed2ac82c46aa5d2ea08be [file] [log] [blame]
Kukjin Kimf7d77072011-06-01 14:18:22 -07001#
2# ARM CPU Frequency scaling drivers
3#
4
Gregory CLEMENTb17d2f82017-12-13 18:05:35 +01005config 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
Gregory CLEMENT92ce45f2017-12-14 16:00:05 +010021config ARM_ARMADA_37XX_CPUFREQ
22 tristate "Armada 37xx CPUFreq support"
Miquel Raynal0cf442c2018-04-24 17:45:06 +020023 depends on ARCH_MVEBU && CPUFREQ_DT
Gregory CLEMENT92ce45f2017-12-14 16:00:05 +010024 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
viresh kumar3b84d582014-03-14 12:10:54 +053028# big LITTLE core layer and glue drivers
Viresh Kumar8a67f0e2013-04-01 12:57:49 +000029config ARM_BIG_LITTLE_CPUFREQ
Viresh Kumar99af7712013-05-04 12:03:54 +053030 tristate "Generic ARM big LITTLE CPUfreq driver"
Sudeep Holla14730142015-05-13 13:35:52 +010031 depends on (ARM_CPU_TOPOLOGY || ARM64) && HAVE_CLK
Punit Agrawal2f7e8a12015-11-17 12:06:23 +000032 # if CPU_THERMAL is on and THERMAL=m, ARM_BIT_LITTLE_CPUFREQ cannot be =y
33 depends on !CPU_THERMAL || THERMAL
Mark Brown109df082013-12-11 22:12:27 +000034 select PM_OPP
Viresh Kumar99af7712013-05-04 12:03:54 +053035 help
36 This enables the Generic CPUfreq driver for ARM big.LITTLE platforms.
Viresh Kumar8a67f0e2013-04-01 12:57:49 +000037
Gregory CLEMENTb17d2f82017-12-13 18:05:35 +010038config ARM_DT_BL_CPUFREQ
39 tristate "Generic probing via DT for ARM big LITTLE CPUfreq driver"
40 depends on ARM_BIG_LITTLE_CPUFREQ && OF
41 help
42 This enables probing via DT for Generic CPUfreq driver for ARM
43 big.LITTLE platform. This gets frequency tables from DT.
44
45config ARM_SCPI_CPUFREQ
46 tristate "SCPI based CPUfreq driver"
Sudeep Holla5c8b2622018-02-23 15:54:42 +000047 depends on ARM_SCPI_PROTOCOL && COMMON_CLK_SCPI
Arnd Bergmann3478b242018-03-13 12:45:40 +010048 depends on !CPU_THERMAL || THERMAL
Gregory CLEMENTb17d2f82017-12-13 18:05:35 +010049 help
Sudeep Holla5c8b2622018-02-23 15:54:42 +000050 This adds the CPUfreq driver support for ARM platforms using SCPI
51 protocol for CPU power management.
Gregory CLEMENTb17d2f82017-12-13 18:05:35 +010052
53 This driver uses SCPI Message Protocol driver to interact with the
54 firmware providing the CPU DVFS functionality.
55
56config ARM_VEXPRESS_SPC_CPUFREQ
57 tristate "Versatile Express SPC based CPUfreq driver"
58 depends on ARM_BIG_LITTLE_CPUFREQ && ARCH_VEXPRESS_SPC
59 help
60 This add the CPUfreq driver support for Versatile Express
61 big.LITTLE platforms using SPC for power management.
62
Markus Mayerde322e02016-10-27 14:05:35 -070063config ARM_BRCMSTB_AVS_CPUFREQ
64 tristate "Broadcom STB AVS CPUfreq driver"
65 depends on ARCH_BRCMSTB || COMPILE_TEST
66 default y
67 help
68 Some Broadcom STB SoCs use a co-processor running proprietary firmware
69 ("AVS") to handle voltage and frequency scaling. This driver provides
70 a standard CPUfreq interface to to the firmware.
71
72 Say Y, if you have a Broadcom SoC with AVS support for DFS or DVFS.
73
Arnd Bergmann8b2b4a42015-01-31 14:35:18 -040074config ARM_EXYNOS5440_CPUFREQ
75 tristate "SAMSUNG EXYNOS5440"
76 depends on SOC_EXYNOS5440
77 depends on HAVE_CLK && OF
78 select PM_OPP
79 default y
80 help
81 This adds the CPUFreq driver for Samsung EXYNOS5440
82 SoC. The nature of exynos5440 clock controller is
83 different than previous exynos controllers so not using
84 the common exynos framework.
85
86 If in doubt, say N.
87
Viresh Kumara0ea0482013-04-04 12:54:09 +000088config ARM_HIGHBANK_CPUFREQ
89 tristate "Calxeda Highbank-based"
Viresh Kumarbbcf0712014-09-09 19:58:03 +053090 depends on ARCH_HIGHBANK && CPUFREQ_DT && REGULATOR
Viresh Kumara0ea0482013-04-04 12:54:09 +000091 default m
92 help
93 This adds the CPUFreq driver for Calxeda Highbank SoC
94 based boards.
95
96 If in doubt, say N.
97
98config ARM_IMX6Q_CPUFREQ
Shawn Guo1d0eaae2013-12-20 10:12:16 +080099 tristate "Freescale i.MX6 cpufreq support"
100 depends on ARCH_MXC
Viresh Kumara0ea0482013-04-04 12:54:09 +0000101 depends on REGULATOR_ANATOP
Nicolas Del Piano7e021682014-07-13 18:59:00 -0300102 select PM_OPP
Viresh Kumara0ea0482013-04-04 12:54:09 +0000103 help
Shawn Guo1d0eaae2013-12-20 10:12:16 +0800104 This adds cpufreq driver support for Freescale i.MX6 series SoCs.
Viresh Kumara0ea0482013-04-04 12:54:09 +0000105
106 If in doubt, say N.
107
108config ARM_KIRKWOOD_CPUFREQ
Andrew Lunn6c8df112014-08-30 18:46:12 +0200109 def_bool MACH_KIRKWOOD
Viresh Kumara0ea0482013-04-04 12:54:09 +0000110 help
111 This adds the CPUFreq driver for Marvell Kirkwood
112 SoCs.
113
Sean Wang501c5742017-07-18 14:01:43 +0800114config ARM_MEDIATEK_CPUFREQ
115 tristate "CPU Frequency scaling support for MediaTek SoCs"
Pi-Cheng Chen14538632015-08-19 10:05:06 +0800116 depends on ARCH_MEDIATEK && REGULATOR
Arnd Bergmann3c2002a2016-02-29 17:04:21 +0100117 depends on !CPU_THERMAL || THERMAL
Pi-Cheng Chen14538632015-08-19 10:05:06 +0800118 select PM_OPP
119 help
Sean Wang501c5742017-07-18 14:01:43 +0800120 This adds the CPUFreq driver support for MediaTek SoCs.
Pi-Cheng Chen14538632015-08-19 10:05:06 +0800121
Russell Kingb09db452012-02-15 11:01:11 -0800122config ARM_OMAP2PLUS_CPUFREQ
123 bool "TI OMAP2+"
Kevin Hilman2d59dcf2012-04-13 13:32:30 -0700124 depends on ARCH_OMAP2PLUS
Russell Kingb09db452012-02-15 11:01:11 -0800125 default ARCH_OMAP2PLUS
Russell Kingb09db452012-02-15 11:01:11 -0800126
Viresh Kumarf023f8d2013-04-04 12:54:15 +0000127config ARM_S3C_CPUFREQ
128 bool
129 help
130 Internal configuration node for common cpufreq on Samsung SoC
131
132config ARM_S3C24XX_CPUFREQ
133 bool "CPUfreq driver for Samsung S3C24XX series CPUs (EXPERIMENTAL)"
134 depends on ARCH_S3C24XX
135 select ARM_S3C_CPUFREQ
136 help
137 This enables the CPUfreq driver for the Samsung S3C24XX family
138 of CPUs.
139
140 For details, take a look at <file:Documentation/cpu-freq>.
141
142 If in doubt, say N.
143
144config ARM_S3C24XX_CPUFREQ_DEBUG
145 bool "Debug CPUfreq Samsung driver core"
146 depends on ARM_S3C24XX_CPUFREQ
147 help
148 Enable s3c_freq_dbg for the Samsung S3C CPUfreq core
149
150config ARM_S3C24XX_CPUFREQ_IODEBUG
151 bool "Debug CPUfreq Samsung driver IO timing"
152 depends on ARM_S3C24XX_CPUFREQ
153 help
154 Enable s3c_freq_iodbg for the Samsung S3C CPUfreq core
155
156config ARM_S3C24XX_CPUFREQ_DEBUGFS
157 bool "Export debugfs for CPUFreq"
158 depends on ARM_S3C24XX_CPUFREQ && DEBUG_FS
159 help
160 Export status information via debugfs.
161
162config ARM_S3C2410_CPUFREQ
163 bool
164 depends on ARM_S3C24XX_CPUFREQ && CPU_S3C2410
165 select S3C2410_CPUFREQ_UTILS
166 help
167 CPU Frequency scaling support for S3C2410
168
169config ARM_S3C2412_CPUFREQ
170 bool
171 depends on ARM_S3C24XX_CPUFREQ && CPU_S3C2412
172 default y
173 select S3C2412_IOTIMING
174 help
175 CPU Frequency scaling support for S3C2412 and S3C2413 SoC CPUs.
176
Heiko Stübner34ee55072012-02-16 11:42:32 +0100177config ARM_S3C2416_CPUFREQ
178 bool "S3C2416 CPU Frequency scaling support"
179 depends on CPU_S3C2416
180 help
181 This adds the CPUFreq driver for the Samsung S3C2416 and
182 S3C2450 SoC. The S3C2416 supports changing the rate of the
183 armdiv clock source and also entering a so called dynamic
184 voltage scaling mode in which it is possible to reduce the
Stratos Karafotis735dc242014-04-22 22:40:10 +0300185 core voltage of the CPU.
Heiko Stübner34ee55072012-02-16 11:42:32 +0100186
187 If in doubt, say N.
188
189config ARM_S3C2416_CPUFREQ_VCORESCALE
Kees Cook0f194b562012-10-02 11:16:53 -0700190 bool "Allow voltage scaling for S3C2416 arm core"
191 depends on ARM_S3C2416_CPUFREQ && REGULATOR
Heiko Stübner34ee55072012-02-16 11:42:32 +0100192 help
193 Enable CPU voltage scaling when entering the dvs mode.
194 It uses information gathered through existing hardware and
195 tests but not documented in any datasheet.
196
197 If in doubt, say N.
198
Viresh Kumarf023f8d2013-04-04 12:54:15 +0000199config ARM_S3C2440_CPUFREQ
200 bool "S3C2440/S3C2442 CPU Frequency scaling support"
201 depends on ARM_S3C24XX_CPUFREQ && (CPU_S3C2440 || CPU_S3C2442)
202 select S3C2410_CPUFREQ_UTILS
203 default y
204 help
205 CPU Frequency scaling support for S3C2440 and S3C2442 SoC CPUs.
206
Kukjin Kim15964d32011-06-06 18:43:01 -0700207config ARM_S3C64XX_CPUFREQ
208 bool "Samsung S3C64XX"
209 depends on CPU_S3C6410
210 default y
211 help
212 This adds the CPUFreq driver for Samsung S3C6410 SoC.
213
214 If in doubt, say N.
215
Kukjin Kimf7d77072011-06-01 14:18:22 -0700216config ARM_S5PV210_CPUFREQ
217 bool "Samsung S5PV210 and S5PC110"
218 depends on CPU_S5PV210
219 default y
220 help
221 This adds the CPUFreq driver for Samsung S5PV210 and
222 S5PC110 SoCs.
223
224 If in doubt, say N.
225
Viresh Kumar59a2e612013-04-04 12:54:16 +0000226config ARM_SA1100_CPUFREQ
227 bool
228
229config ARM_SA1110_CPUFREQ
230 bool
231
Sudeep Holla99d6bdf2017-06-18 09:38:11 +0100232config ARM_SCMI_CPUFREQ
233 tristate "SCMI based CPUfreq driver"
234 depends on ARM_SCMI_PROTOCOL || COMPILE_TEST
Arnd Bergmann697a3a82018-03-13 10:37:33 +0100235 depends on !CPU_THERMAL || THERMAL
Sudeep Holla99d6bdf2017-06-18 09:38:11 +0100236 select PM_OPP
237 help
238 This adds the CPUfreq driver support for ARM platforms using SCMI
239 protocol for CPU power management.
240
241 This driver uses SCMI Message Protocol driver to interact with the
242 firmware providing the CPU DVFS functionality.
243
Deepak Sikri42099322012-11-27 14:05:26 +0100244config ARM_SPEAR_CPUFREQ
245 bool "SPEAr CPUFreq support"
246 depends on PLAT_SPEAR
247 default y
248 help
249 This adds the CPUFreq driver support for SPEAr SOCs.
Viresh Kumardbb8d762013-06-12 12:05:48 +0530250
Lee Jonesab0ea252015-12-10 09:42:16 +0000251config ARM_STI_CPUFREQ
252 tristate "STi CPUFreq support"
253 depends on SOC_STIH407
254 help
255 This driver uses the generic OPP framework to match the running
256 platform with a predefined set of suitable values. If not provided
257 we will fall-back so safe-values contained in Device Tree. Enable
258 this config option if you wish to add CPUFreq support for STi based
259 SoCs.
260
Marc Gonzalez9dbd2242017-07-18 18:48:39 +0200261config ARM_TANGO_CPUFREQ
262 bool
263 depends on CPUFREQ_DT && ARCH_TANGO
264 default y
265
Tuomas Tynkkynen109e13e2015-05-13 17:58:47 +0300266config ARM_TEGRA20_CPUFREQ
267 bool "Tegra20 CPUFreq support"
Viresh Kumardbb8d762013-06-12 12:05:48 +0530268 depends on ARCH_TEGRA
Viresh Kumardbb8d762013-06-12 12:05:48 +0530269 default y
270 help
Tuomas Tynkkynen109e13e2015-05-13 17:58:47 +0300271 This adds the CPUFreq driver support for Tegra20 SOCs.
Petr Cvek608eab22014-11-24 04:59:26 +0100272
Tuomas Tynkkynen9eb15db2015-05-13 17:58:48 +0300273config ARM_TEGRA124_CPUFREQ
274 tristate "Tegra124 CPUFreq support"
Arnd Bergmannb5832e42015-12-08 22:52:45 +0100275 depends on ARCH_TEGRA && CPUFREQ_DT && REGULATOR
Tuomas Tynkkynen9eb15db2015-05-13 17:58:48 +0300276 default y
277 help
278 This adds the CPUFreq driver support for Tegra124 SOCs.
279
Mikko Perttunen939dc6f2017-04-11 11:09:15 +0300280config ARM_TEGRA186_CPUFREQ
281 tristate "Tegra186 CPUFreq support"
282 depends on ARCH_TEGRA && TEGRA_BPMP
283 help
284 This adds the CPUFreq driver support for Tegra186 SOCs.
285
Dave Gerlache13cf042017-02-03 11:29:28 -0600286config ARM_TI_CPUFREQ
287 bool "Texas Instruments CPUFreq support"
288 depends on ARCH_OMAP2PLUS
289 help
290 This driver enables valid OPPs on the running platform based on
291 values contained within the SoC in use. Enable this in order to
292 use the cpufreq-dt driver on all Texas Instruments platforms that
293 provide dt based operating-points-v2 tables with opp-supported-hw
294 data provided. Required for cpufreq support on AM335x, AM437x,
295 DRA7x, and AM57x platforms.
296
Petr Cvek608eab22014-11-24 04:59:26 +0100297config ARM_PXA2xx_CPUFREQ
298 tristate "Intel PXA2xx CPUfreq driver"
299 depends on PXA27x || PXA25x
300 help
301 This add the CPUFreq driver support for Intel PXA2xx SOCs.
302
303 If in doubt, say N.