blob: dbb4fd47ba1f271d00382e7ef575d0b87362a7a4 [file] [log] [blame]
xjb04a4022021-11-25 15:01:52 +08001#
2# ARM CPU Frequency scaling drivers
3#
4
5config 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
21config ARM_ARMADA_37XX_CPUFREQ
22 tristate "Armada 37xx CPUFreq support"
23 depends on ARCH_MVEBU && CPUFREQ_DT
24 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
28# big LITTLE core layer and glue drivers
29config ARM_BIG_LITTLE_CPUFREQ
30 tristate "Generic ARM big LITTLE CPUfreq driver"
31 depends on (ARM_CPU_TOPOLOGY || ARM64) && HAVE_CLK
32 # if CPU_THERMAL is on and THERMAL=m, ARM_BIT_LITTLE_CPUFREQ cannot be =y
33 depends on !CPU_THERMAL || THERMAL
34 select PM_OPP
35 help
36 This enables the Generic CPUfreq driver for ARM big.LITTLE platforms.
37
38config 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"
47 depends on ARM_SCPI_PROTOCOL && COMMON_CLK_SCPI
48 depends on !CPU_THERMAL || THERMAL
49 help
50 This adds the CPUfreq driver support for ARM platforms using SCPI
51 protocol for CPU power management.
52
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
63config 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
74config ARM_HIGHBANK_CPUFREQ
75 tristate "Calxeda Highbank-based"
76 depends on ARCH_HIGHBANK && CPUFREQ_DT && REGULATOR
77 default m
78 help
79 This adds the CPUFreq driver for Calxeda Highbank SoC
80 based boards.
81
82 If in doubt, say N.
83
84config ARM_IMX6Q_CPUFREQ
85 tristate "Freescale i.MX6 cpufreq support"
86 depends on ARCH_MXC
87 depends on REGULATOR_ANATOP
88 select PM_OPP
89 help
90 This adds cpufreq driver support for Freescale i.MX6 series SoCs.
91
92 If in doubt, say N.
93
94config ARM_KIRKWOOD_CPUFREQ
95 def_bool MACH_KIRKWOOD
96 help
97 This adds the CPUFreq driver for Marvell Kirkwood
98 SoCs.
99
100config ARM_MEDIATEK_CPUFREQ
101 tristate "CPU Frequency scaling support for MediaTek SoCs"
102 depends on ARCH_MEDIATEK && REGULATOR
103 depends on !CPU_THERMAL || THERMAL
104 select PM_OPP
105 help
106 This adds the CPUFreq driver support for MediaTek SoCs.
107
108config ARM_MEDIATEK_MCUPM_CPUFREQ
109 tristate "Mediatek MCUPM CPUFreq support"
110 depends on ARCH_MEDIATEK
111 depends on MTK_TINYSYS_MCUPM_SUPPORT
112 select PM_OPP
113 help
114 This adds the CPUFreq driver support for Mediatek MCUPM-based SoCs.
115 Some chipsets interact with a microprocessor for the firmware to
116 scale frequency.
117
118 If in doubt, say N.
119
120config ARM_MEDIATEK_MT6880_CPUFREQ
121 tristate "Mediatek MT6880 CPUFreq support"
122 depends on ARCH_MEDIATEK && REGULATOR
123 select PM_OPP
124 help
125 This adds the CPUFreq driver support for Mediatek MT6880 Series SoC.
126 This driver require dt-based operating-points-v2 tables with
127 voltage and frequency.
128 If in doubt, say N.
129
130config ARM_SSPM_CPUFREQ
131 tristate "Mediatek SSPM CPUFreq support"
132 depends on ARCH_MEDIATEK
133 select PM_OPP
134 help
135 This adds the CPUFreq driver support for Mediatek MT67xx Series SoC.
136 This driver require dt-based operating-points-v2 tables with
137 voltage and frequency.
138 If in doubt, say N.
139
140config ARM_OMAP2PLUS_CPUFREQ
141 bool "TI OMAP2+"
142 depends on ARCH_OMAP2PLUS
143 default ARCH_OMAP2PLUS
144
145config ARM_QCOM_CPUFREQ_KRYO
146 tristate "Qualcomm Kryo based CPUFreq"
147 depends on ARM64
148 depends on QCOM_QFPROM
149 depends on QCOM_SMEM
150 select PM_OPP
151 help
152 This adds the CPUFreq driver for Qualcomm Kryo SoC based boards.
153
154 If in doubt, say N.
155
156config ARM_S3C_CPUFREQ
157 bool
158 help
159 Internal configuration node for common cpufreq on Samsung SoC
160
161config ARM_S3C24XX_CPUFREQ
162 bool "CPUfreq driver for Samsung S3C24XX series CPUs (EXPERIMENTAL)"
163 depends on ARCH_S3C24XX
164 select ARM_S3C_CPUFREQ
165 help
166 This enables the CPUfreq driver for the Samsung S3C24XX family
167 of CPUs.
168
169 For details, take a look at <file:Documentation/cpu-freq>.
170
171 If in doubt, say N.
172
173config ARM_S3C24XX_CPUFREQ_DEBUG
174 bool "Debug CPUfreq Samsung driver core"
175 depends on ARM_S3C24XX_CPUFREQ
176 help
177 Enable s3c_freq_dbg for the Samsung S3C CPUfreq core
178
179config ARM_S3C24XX_CPUFREQ_IODEBUG
180 bool "Debug CPUfreq Samsung driver IO timing"
181 depends on ARM_S3C24XX_CPUFREQ
182 help
183 Enable s3c_freq_iodbg for the Samsung S3C CPUfreq core
184
185config ARM_S3C24XX_CPUFREQ_DEBUGFS
186 bool "Export debugfs for CPUFreq"
187 depends on ARM_S3C24XX_CPUFREQ && DEBUG_FS
188 help
189 Export status information via debugfs.
190
191config ARM_S3C2410_CPUFREQ
192 bool
193 depends on ARM_S3C24XX_CPUFREQ && CPU_S3C2410
194 select S3C2410_CPUFREQ_UTILS
195 help
196 CPU Frequency scaling support for S3C2410
197
198config ARM_S3C2412_CPUFREQ
199 bool
200 depends on ARM_S3C24XX_CPUFREQ && CPU_S3C2412
201 default y
202 select S3C2412_IOTIMING
203 help
204 CPU Frequency scaling support for S3C2412 and S3C2413 SoC CPUs.
205
206config ARM_S3C2416_CPUFREQ
207 bool "S3C2416 CPU Frequency scaling support"
208 depends on CPU_S3C2416
209 help
210 This adds the CPUFreq driver for the Samsung S3C2416 and
211 S3C2450 SoC. The S3C2416 supports changing the rate of the
212 armdiv clock source and also entering a so called dynamic
213 voltage scaling mode in which it is possible to reduce the
214 core voltage of the CPU.
215
216 If in doubt, say N.
217
218config ARM_S3C2416_CPUFREQ_VCORESCALE
219 bool "Allow voltage scaling for S3C2416 arm core"
220 depends on ARM_S3C2416_CPUFREQ && REGULATOR
221 help
222 Enable CPU voltage scaling when entering the dvs mode.
223 It uses information gathered through existing hardware and
224 tests but not documented in any datasheet.
225
226 If in doubt, say N.
227
228config ARM_S3C2440_CPUFREQ
229 bool "S3C2440/S3C2442 CPU Frequency scaling support"
230 depends on ARM_S3C24XX_CPUFREQ && (CPU_S3C2440 || CPU_S3C2442)
231 select S3C2410_CPUFREQ_UTILS
232 default y
233 help
234 CPU Frequency scaling support for S3C2440 and S3C2442 SoC CPUs.
235
236config ARM_S3C64XX_CPUFREQ
237 bool "Samsung S3C64XX"
238 depends on CPU_S3C6410
239 default y
240 help
241 This adds the CPUFreq driver for Samsung S3C6410 SoC.
242
243 If in doubt, say N.
244
245config ARM_S5PV210_CPUFREQ
246 bool "Samsung S5PV210 and S5PC110"
247 depends on CPU_S5PV210
248 default y
249 help
250 This adds the CPUFreq driver for Samsung S5PV210 and
251 S5PC110 SoCs.
252
253 If in doubt, say N.
254
255config ARM_SA1100_CPUFREQ
256 bool
257
258config ARM_SA1110_CPUFREQ
259 bool
260
261config ARM_SCMI_CPUFREQ
262 tristate "SCMI based CPUfreq driver"
263 depends on ARM_SCMI_PROTOCOL || COMPILE_TEST
264 depends on !CPU_THERMAL || THERMAL
265 select PM_OPP
266 help
267 This adds the CPUfreq driver support for ARM platforms using SCMI
268 protocol for CPU power management.
269
270 This driver uses SCMI Message Protocol driver to interact with the
271 firmware providing the CPU DVFS functionality.
272
273config ARM_SPEAR_CPUFREQ
274 bool "SPEAr CPUFreq support"
275 depends on PLAT_SPEAR
276 default y
277 help
278 This adds the CPUFreq driver support for SPEAr SOCs.
279
280config ARM_STI_CPUFREQ
281 tristate "STi CPUFreq support"
282 depends on SOC_STIH407
283 help
284 This driver uses the generic OPP framework to match the running
285 platform with a predefined set of suitable values. If not provided
286 we will fall-back so safe-values contained in Device Tree. Enable
287 this config option if you wish to add CPUFreq support for STi based
288 SoCs.
289
290config ARM_TANGO_CPUFREQ
291 bool
292 depends on CPUFREQ_DT && ARCH_TANGO
293 default y
294
295config ARM_TEGRA20_CPUFREQ
296 tristate "Tegra20 CPUFreq support"
297 depends on ARCH_TEGRA
298 default y
299 help
300 This adds the CPUFreq driver support for Tegra20 SOCs.
301
302config ARM_TEGRA124_CPUFREQ
303 tristate "Tegra124 CPUFreq support"
304 depends on ARCH_TEGRA && CPUFREQ_DT && REGULATOR
305 default y
306 help
307 This adds the CPUFreq driver support for Tegra124 SOCs.
308
309config ARM_TEGRA186_CPUFREQ
310 tristate "Tegra186 CPUFreq support"
311 depends on ARCH_TEGRA && TEGRA_BPMP
312 help
313 This adds the CPUFreq driver support for Tegra186 SOCs.
314
315config ARM_TI_CPUFREQ
316 bool "Texas Instruments CPUFreq support"
317 depends on ARCH_OMAP2PLUS
318 help
319 This driver enables valid OPPs on the running platform based on
320 values contained within the SoC in use. Enable this in order to
321 use the cpufreq-dt driver on all Texas Instruments platforms that
322 provide dt based operating-points-v2 tables with opp-supported-hw
323 data provided. Required for cpufreq support on AM335x, AM437x,
324 DRA7x, and AM57x platforms.
325
326config ARM_PXA2xx_CPUFREQ
327 tristate "Intel PXA2xx CPUfreq driver"
328 depends on PXA27x || PXA25x
329 help
330 This add the CPUFreq driver support for Intel PXA2xx SOCs.
331
332 If in doubt, say N.