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