Merge remote-tracking branches 'asoc/topic/davinci', 'asoc/topic/fsl-card' and 'asoc...
[cascardo/linux.git] / drivers / cpufreq / Kconfig.arm
1 #
2 # ARM CPU Frequency scaling drivers
3 #
4
5 # big LITTLE core layer and glue drivers
6 config ARM_BIG_LITTLE_CPUFREQ
7         tristate "Generic ARM big LITTLE CPUfreq driver"
8         depends on (ARM_CPU_TOPOLOGY || ARM64) && HAVE_CLK
9         # if CPU_THERMAL is on and THERMAL=m, ARM_BIT_LITTLE_CPUFREQ cannot be =y
10         depends on !CPU_THERMAL || THERMAL
11         select PM_OPP
12         help
13           This enables the Generic CPUfreq driver for ARM big.LITTLE platforms.
14
15 config ARM_DT_BL_CPUFREQ
16         tristate "Generic probing via DT for ARM big LITTLE CPUfreq driver"
17         depends on ARM_BIG_LITTLE_CPUFREQ && OF
18         help
19           This enables probing via DT for Generic CPUfreq driver for ARM
20           big.LITTLE platform. This gets frequency tables from DT.
21
22 config ARM_VEXPRESS_SPC_CPUFREQ
23         tristate "Versatile Express SPC based CPUfreq driver"
24         depends on ARM_BIG_LITTLE_CPUFREQ && ARCH_VEXPRESS_SPC
25         help
26           This add the CPUfreq driver support for Versatile Express
27           big.LITTLE platforms using SPC for power management.
28
29 config ARM_EXYNOS5440_CPUFREQ
30         tristate "SAMSUNG EXYNOS5440"
31         depends on SOC_EXYNOS5440
32         depends on HAVE_CLK && OF
33         select PM_OPP
34         default y
35         help
36           This adds the CPUFreq driver for Samsung EXYNOS5440
37           SoC. The nature of exynos5440 clock controller is
38           different than previous exynos controllers so not using
39           the common exynos framework.
40
41           If in doubt, say N.
42
43 config ARM_HIGHBANK_CPUFREQ
44         tristate "Calxeda Highbank-based"
45         depends on ARCH_HIGHBANK && CPUFREQ_DT && REGULATOR
46         default m
47         help
48           This adds the CPUFreq driver for Calxeda Highbank SoC
49           based boards.
50
51           If in doubt, say N.
52
53 config ARM_HISI_ACPU_CPUFREQ
54         tristate "Hisilicon ACPU CPUfreq driver"
55         depends on ARCH_HISI && CPUFREQ_DT
56         select PM_OPP
57         help
58           This enables the hisilicon ACPU CPUfreq driver.
59
60           If in doubt, say N.
61
62 config ARM_IMX6Q_CPUFREQ
63         tristate "Freescale i.MX6 cpufreq support"
64         depends on ARCH_MXC
65         depends on REGULATOR_ANATOP
66         select PM_OPP
67         help
68           This adds cpufreq driver support for Freescale i.MX6 series SoCs.
69
70           If in doubt, say N.
71
72 config ARM_INTEGRATOR
73         tristate "CPUfreq driver for ARM Integrator CPUs"
74         depends on ARCH_INTEGRATOR
75         default y
76         help
77           This enables the CPUfreq driver for ARM Integrator CPUs.
78           If in doubt, say Y.
79
80 config ARM_KIRKWOOD_CPUFREQ
81         def_bool MACH_KIRKWOOD
82         help
83           This adds the CPUFreq driver for Marvell Kirkwood
84           SoCs.
85
86 config ARM_MT8173_CPUFREQ
87         tristate "Mediatek MT8173 CPUFreq support"
88         depends on ARCH_MEDIATEK && REGULATOR
89         depends on ARM64 || (ARM_CPU_TOPOLOGY && COMPILE_TEST)
90         depends on !CPU_THERMAL || THERMAL
91         select PM_OPP
92         help
93           This adds the CPUFreq driver support for Mediatek MT8173 SoC.
94
95 config ARM_OMAP2PLUS_CPUFREQ
96         bool "TI OMAP2+"
97         depends on ARCH_OMAP2PLUS
98         default ARCH_OMAP2PLUS
99
100 config ARM_S3C_CPUFREQ
101         bool
102         help
103           Internal configuration node for common cpufreq on Samsung SoC
104
105 config ARM_S3C24XX_CPUFREQ
106         bool "CPUfreq driver for Samsung S3C24XX series CPUs (EXPERIMENTAL)"
107         depends on ARCH_S3C24XX
108         select ARM_S3C_CPUFREQ
109         help
110           This enables the CPUfreq driver for the Samsung S3C24XX family
111           of CPUs.
112
113           For details, take a look at <file:Documentation/cpu-freq>.
114
115           If in doubt, say N.
116
117 config ARM_S3C24XX_CPUFREQ_DEBUG
118         bool "Debug CPUfreq Samsung driver core"
119         depends on ARM_S3C24XX_CPUFREQ
120         help
121           Enable s3c_freq_dbg for the Samsung S3C CPUfreq core
122
123 config ARM_S3C24XX_CPUFREQ_IODEBUG
124         bool "Debug CPUfreq Samsung driver IO timing"
125         depends on ARM_S3C24XX_CPUFREQ
126         help
127           Enable s3c_freq_iodbg for the Samsung S3C CPUfreq core
128
129 config ARM_S3C24XX_CPUFREQ_DEBUGFS
130         bool "Export debugfs for CPUFreq"
131         depends on ARM_S3C24XX_CPUFREQ && DEBUG_FS
132         help
133           Export status information via debugfs.
134
135 config ARM_S3C2410_CPUFREQ
136         bool
137         depends on ARM_S3C24XX_CPUFREQ && CPU_S3C2410
138         select S3C2410_CPUFREQ_UTILS
139         help
140           CPU Frequency scaling support for S3C2410
141
142 config ARM_S3C2412_CPUFREQ
143         bool
144         depends on ARM_S3C24XX_CPUFREQ && CPU_S3C2412
145         default y
146         select S3C2412_IOTIMING
147         help
148           CPU Frequency scaling support for S3C2412 and S3C2413 SoC CPUs.
149
150 config ARM_S3C2416_CPUFREQ
151         bool "S3C2416 CPU Frequency scaling support"
152         depends on CPU_S3C2416
153         help
154           This adds the CPUFreq driver for the Samsung S3C2416 and
155           S3C2450 SoC. The S3C2416 supports changing the rate of the
156           armdiv clock source and also entering a so called dynamic
157           voltage scaling mode in which it is possible to reduce the
158           core voltage of the CPU.
159
160           If in doubt, say N.
161
162 config ARM_S3C2416_CPUFREQ_VCORESCALE
163         bool "Allow voltage scaling for S3C2416 arm core"
164         depends on ARM_S3C2416_CPUFREQ && REGULATOR
165         help
166           Enable CPU voltage scaling when entering the dvs mode.
167           It uses information gathered through existing hardware and
168           tests but not documented in any datasheet.
169
170           If in doubt, say N.
171
172 config ARM_S3C2440_CPUFREQ
173         bool "S3C2440/S3C2442 CPU Frequency scaling support"
174         depends on ARM_S3C24XX_CPUFREQ && (CPU_S3C2440 || CPU_S3C2442)
175         select S3C2410_CPUFREQ_UTILS
176         default y
177         help
178           CPU Frequency scaling support for S3C2440 and S3C2442 SoC CPUs.
179
180 config ARM_S3C64XX_CPUFREQ
181         bool "Samsung S3C64XX"
182         depends on CPU_S3C6410
183         default y
184         help
185           This adds the CPUFreq driver for Samsung S3C6410 SoC.
186
187           If in doubt, say N.
188
189 config ARM_S5PV210_CPUFREQ
190         bool "Samsung S5PV210 and S5PC110"
191         depends on CPU_S5PV210
192         default y
193         help
194           This adds the CPUFreq driver for Samsung S5PV210 and
195           S5PC110 SoCs.
196
197           If in doubt, say N.
198
199 config ARM_SA1100_CPUFREQ
200         bool
201
202 config ARM_SA1110_CPUFREQ
203         bool
204
205 config ARM_SCPI_CPUFREQ
206         tristate "SCPI based CPUfreq driver"
207         depends on ARM_BIG_LITTLE_CPUFREQ && ARM_SCPI_PROTOCOL && COMMON_CLK_SCPI
208         help
209           This adds the CPUfreq driver support for ARM big.LITTLE platforms
210           using SCPI protocol for CPU power management.
211
212           This driver uses SCPI Message Protocol driver to interact with the
213           firmware providing the CPU DVFS functionality.
214
215 config ARM_SPEAR_CPUFREQ
216         bool "SPEAr CPUFreq support"
217         depends on PLAT_SPEAR
218         default y
219         help
220           This adds the CPUFreq driver support for SPEAr SOCs.
221
222 config ARM_STI_CPUFREQ
223         tristate "STi CPUFreq support"
224         depends on SOC_STIH407
225         help
226           This driver uses the generic OPP framework to match the running
227           platform with a predefined set of suitable values.  If not provided
228           we will fall-back so safe-values contained in Device Tree.  Enable
229           this config option if you wish to add CPUFreq support for STi based
230           SoCs.
231
232 config ARM_TEGRA20_CPUFREQ
233         bool "Tegra20 CPUFreq support"
234         depends on ARCH_TEGRA
235         default y
236         help
237           This adds the CPUFreq driver support for Tegra20 SOCs.
238
239 config ARM_TEGRA124_CPUFREQ
240         tristate "Tegra124 CPUFreq support"
241         depends on ARCH_TEGRA && CPUFREQ_DT && REGULATOR
242         default y
243         help
244           This adds the CPUFreq driver support for Tegra124 SOCs.
245
246 config ARM_PXA2xx_CPUFREQ
247         tristate "Intel PXA2xx CPUfreq driver"
248         depends on PXA27x || PXA25x
249         help
250           This add the CPUFreq driver support for Intel PXA2xx SOCs.
251
252           If in doubt, say N.
253
254 config ACPI_CPPC_CPUFREQ
255         tristate "CPUFreq driver based on the ACPI CPPC spec"
256         depends on ACPI
257         select ACPI_CPPC_LIB
258         default n
259         help
260           This adds a CPUFreq driver which uses CPPC methods
261           as described in the ACPIv5.1 spec. CPPC stands for
262           Collaborative Processor Performance Controls. It
263           is based on an abstract continuous scale of CPU
264           performance values which allows the remote power
265           processor to flexibly optimize for power and
266           performance. CPPC relies on power management firmware
267           support for its operation.
268
269           If in doubt, say N.