Merge tag 'fsnotify_for_v4.21-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git...
[sfrench/cifs-2.6.git] / drivers / cpufreq / Kconfig.arm
1 #
2 # ARM CPU Frequency scaling drivers
3 #
4
5 config 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
21 config 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
29 config ARM_BIG_LITTLE_CPUFREQ
30         tristate "Generic ARM big LITTLE CPUfreq driver"
31         depends on ARM_CPU_TOPOLOGY && 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
38 config ARM_SCPI_CPUFREQ
39         tristate "SCPI based CPUfreq driver"
40         depends on ARM_SCPI_PROTOCOL && COMMON_CLK_SCPI
41         depends on !CPU_THERMAL || THERMAL
42         help
43           This adds the CPUfreq driver support for ARM platforms using SCPI
44           protocol for CPU power management.
45
46           This driver uses SCPI Message Protocol driver to interact with the
47           firmware providing the CPU DVFS functionality.
48
49 config ARM_VEXPRESS_SPC_CPUFREQ
50         tristate "Versatile Express SPC based CPUfreq driver"
51         depends on ARM_BIG_LITTLE_CPUFREQ && ARCH_VEXPRESS_SPC
52         help
53           This add the CPUfreq driver support for Versatile Express
54           big.LITTLE platforms using SPC for power management.
55
56 config ARM_BRCMSTB_AVS_CPUFREQ
57         tristate "Broadcom STB AVS CPUfreq driver"
58         depends on ARCH_BRCMSTB || COMPILE_TEST
59         default y
60         help
61           Some Broadcom STB SoCs use a co-processor running proprietary firmware
62           ("AVS") to handle voltage and frequency scaling. This driver provides
63           a standard CPUfreq interface to to the firmware.
64
65           Say Y, if you have a Broadcom SoC with AVS support for DFS or DVFS.
66
67 config ARM_HIGHBANK_CPUFREQ
68         tristate "Calxeda Highbank-based"
69         depends on ARCH_HIGHBANK && CPUFREQ_DT && REGULATOR
70         default m
71         help
72           This adds the CPUFreq driver for Calxeda Highbank SoC
73           based boards.
74
75           If in doubt, say N.
76
77 config ARM_IMX6Q_CPUFREQ
78         tristate "Freescale i.MX6 cpufreq support"
79         depends on ARCH_MXC
80         depends on REGULATOR_ANATOP
81         select PM_OPP
82         help
83           This adds cpufreq driver support for Freescale i.MX6 series SoCs.
84
85           If in doubt, say N.
86
87 config ARM_KIRKWOOD_CPUFREQ
88         def_bool MACH_KIRKWOOD
89         help
90           This adds the CPUFreq driver for Marvell Kirkwood
91           SoCs.
92
93 config ARM_MEDIATEK_CPUFREQ
94         tristate "CPU Frequency scaling support for MediaTek SoCs"
95         depends on ARCH_MEDIATEK && REGULATOR
96         depends on !CPU_THERMAL || THERMAL
97         select PM_OPP
98         help
99           This adds the CPUFreq driver support for MediaTek SoCs.
100
101 config ARM_OMAP2PLUS_CPUFREQ
102         bool "TI OMAP2+"
103         depends on ARCH_OMAP2PLUS
104         default ARCH_OMAP2PLUS
105
106 config ARM_QCOM_CPUFREQ_KRYO
107         tristate "Qualcomm Kryo based CPUFreq"
108         depends on ARM64
109         depends on QCOM_QFPROM
110         depends on QCOM_SMEM
111         select PM_OPP
112         help
113           This adds the CPUFreq driver for Qualcomm Kryo SoC based boards.
114
115           If in doubt, say N.
116
117 config ARM_QCOM_CPUFREQ_HW
118         tristate "QCOM CPUFreq HW driver"
119         depends on ARCH_QCOM || COMPILE_TEST
120         help
121           Support for the CPUFreq HW driver.
122           Some QCOM chipsets have a HW engine to offload the steps
123           necessary for changing the frequency of the CPUs. Firmware loaded
124           in this engine exposes a programming interface to the OS.
125           The driver implements the cpufreq interface for this HW engine.
126           Say Y if you want to support CPUFreq HW.
127
128 config ARM_S3C_CPUFREQ
129         bool
130         help
131           Internal configuration node for common cpufreq on Samsung SoC
132
133 config ARM_S3C24XX_CPUFREQ
134         bool "CPUfreq driver for Samsung S3C24XX series CPUs (EXPERIMENTAL)"
135         depends on ARCH_S3C24XX
136         select ARM_S3C_CPUFREQ
137         help
138           This enables the CPUfreq driver for the Samsung S3C24XX family
139           of CPUs.
140
141           For details, take a look at <file:Documentation/cpu-freq>.
142
143           If in doubt, say N.
144
145 config ARM_S3C24XX_CPUFREQ_DEBUG
146         bool "Debug CPUfreq Samsung driver core"
147         depends on ARM_S3C24XX_CPUFREQ
148         help
149           Enable s3c_freq_dbg for the Samsung S3C CPUfreq core
150
151 config ARM_S3C24XX_CPUFREQ_IODEBUG
152         bool "Debug CPUfreq Samsung driver IO timing"
153         depends on ARM_S3C24XX_CPUFREQ
154         help
155           Enable s3c_freq_iodbg for the Samsung S3C CPUfreq core
156
157 config ARM_S3C24XX_CPUFREQ_DEBUGFS
158         bool "Export debugfs for CPUFreq"
159         depends on ARM_S3C24XX_CPUFREQ && DEBUG_FS
160         help
161           Export status information via debugfs.
162
163 config ARM_S3C2410_CPUFREQ
164         bool
165         depends on ARM_S3C24XX_CPUFREQ && CPU_S3C2410
166         select S3C2410_CPUFREQ_UTILS
167         help
168           CPU Frequency scaling support for S3C2410
169
170 config ARM_S3C2412_CPUFREQ
171         bool
172         depends on ARM_S3C24XX_CPUFREQ && CPU_S3C2412
173         default y
174         select S3C2412_IOTIMING
175         help
176           CPU Frequency scaling support for S3C2412 and S3C2413 SoC CPUs.
177
178 config ARM_S3C2416_CPUFREQ
179         bool "S3C2416 CPU Frequency scaling support"
180         depends on CPU_S3C2416
181         help
182           This adds the CPUFreq driver for the Samsung S3C2416 and
183           S3C2450 SoC. The S3C2416 supports changing the rate of the
184           armdiv clock source and also entering a so called dynamic
185           voltage scaling mode in which it is possible to reduce the
186           core voltage of the CPU.
187
188           If in doubt, say N.
189
190 config ARM_S3C2416_CPUFREQ_VCORESCALE
191         bool "Allow voltage scaling for S3C2416 arm core"
192         depends on ARM_S3C2416_CPUFREQ && REGULATOR
193         help
194           Enable CPU voltage scaling when entering the dvs mode.
195           It uses information gathered through existing hardware and
196           tests but not documented in any datasheet.
197
198           If in doubt, say N.
199
200 config ARM_S3C2440_CPUFREQ
201         bool "S3C2440/S3C2442 CPU Frequency scaling support"
202         depends on ARM_S3C24XX_CPUFREQ && (CPU_S3C2440 || CPU_S3C2442)
203         select S3C2410_CPUFREQ_UTILS
204         default y
205         help
206           CPU Frequency scaling support for S3C2440 and S3C2442 SoC CPUs.
207
208 config ARM_S3C64XX_CPUFREQ
209         bool "Samsung S3C64XX"
210         depends on CPU_S3C6410
211         default y
212         help
213           This adds the CPUFreq driver for Samsung S3C6410 SoC.
214
215           If in doubt, say N.
216
217 config ARM_S5PV210_CPUFREQ
218         bool "Samsung S5PV210 and S5PC110"
219         depends on CPU_S5PV210
220         default y
221         help
222           This adds the CPUFreq driver for Samsung S5PV210 and
223           S5PC110 SoCs.
224
225           If in doubt, say N.
226
227 config ARM_SA1100_CPUFREQ
228         bool
229
230 config ARM_SA1110_CPUFREQ
231         bool
232
233 config ARM_SCMI_CPUFREQ
234         tristate "SCMI based CPUfreq driver"
235         depends on ARM_SCMI_PROTOCOL || COMPILE_TEST
236         depends on !CPU_THERMAL || THERMAL
237         select PM_OPP
238         help
239           This adds the CPUfreq driver support for ARM platforms using SCMI
240           protocol for CPU power management.
241
242           This driver uses SCMI Message Protocol driver to interact with the
243           firmware providing the CPU DVFS functionality.
244
245 config ARM_SPEAR_CPUFREQ
246         bool "SPEAr CPUFreq support"
247         depends on PLAT_SPEAR
248         default y
249         help
250           This adds the CPUFreq driver support for SPEAr SOCs.
251
252 config ARM_STI_CPUFREQ
253         tristate "STi CPUFreq support"
254         depends on SOC_STIH407
255         help
256           This driver uses the generic OPP framework to match the running
257           platform with a predefined set of suitable values.  If not provided
258           we will fall-back so safe-values contained in Device Tree.  Enable
259           this config option if you wish to add CPUFreq support for STi based
260           SoCs.
261
262 config ARM_TANGO_CPUFREQ
263         bool
264         depends on CPUFREQ_DT && ARCH_TANGO
265         default y
266
267 config ARM_TEGRA20_CPUFREQ
268         tristate "Tegra20 CPUFreq support"
269         depends on ARCH_TEGRA
270         default y
271         help
272           This adds the CPUFreq driver support for Tegra20 SOCs.
273
274 config ARM_TEGRA124_CPUFREQ
275         tristate "Tegra124 CPUFreq support"
276         depends on ARCH_TEGRA && CPUFREQ_DT && REGULATOR
277         default y
278         help
279           This adds the CPUFreq driver support for Tegra124 SOCs.
280
281 config ARM_TEGRA186_CPUFREQ
282         tristate "Tegra186 CPUFreq support"
283         depends on ARCH_TEGRA && TEGRA_BPMP
284         help
285           This adds the CPUFreq driver support for Tegra186 SOCs.
286
287 config ARM_TI_CPUFREQ
288         bool "Texas Instruments CPUFreq support"
289         depends on ARCH_OMAP2PLUS
290         help
291           This driver enables valid OPPs on the running platform based on
292           values contained within the SoC in use. Enable this in order to
293           use the cpufreq-dt driver on all Texas Instruments platforms that
294           provide dt based operating-points-v2 tables with opp-supported-hw
295           data provided. Required for cpufreq support on AM335x, AM437x,
296           DRA7x, and AM57x platforms.
297
298 config ARM_PXA2xx_CPUFREQ
299         tristate "Intel PXA2xx CPUfreq driver"
300         depends on PXA27x || PXA25x
301         help
302           This add the CPUFreq driver support for Intel PXA2xx SOCs.
303
304           If in doubt, say N.