Merge tag 'chrome-platform-for-linus-4.13' of git://git.kernel.org/pub/scm/linux...
[linux/fpc-iii.git] / drivers / cpufreq / Kconfig.arm
blob2011fec2d6ad9d5b4ad1b089c38a1be23baeb509
2 # ARM CPU Frequency scaling drivers
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.
15 config ARM_BRCMSTB_AVS_CPUFREQ
16 tristate "Broadcom STB AVS CPUfreq driver"
17 depends on ARCH_BRCMSTB || COMPILE_TEST
18 default y
19 help
20 Some Broadcom STB SoCs use a co-processor running proprietary firmware
21 ("AVS") to handle voltage and frequency scaling. This driver provides
22 a standard CPUfreq interface to to the firmware.
24 Say Y, if you have a Broadcom SoC with AVS support for DFS or DVFS.
26 config ARM_BRCMSTB_AVS_CPUFREQ_DEBUG
27 bool "Broadcom STB AVS CPUfreq driver sysfs debug capability"
28 depends on ARM_BRCMSTB_AVS_CPUFREQ
29 help
30 Enabling this option turns on debug support via sysfs under
31 /sys/kernel/debug/brcmstb-avs-cpufreq. It is possible to read all and
32 write some AVS mailbox registers through sysfs entries.
34 If in doubt, say N.
36 config ARM_DT_BL_CPUFREQ
37 tristate "Generic probing via DT for ARM big LITTLE CPUfreq driver"
38 depends on ARM_BIG_LITTLE_CPUFREQ && OF
39 help
40 This enables probing via DT for Generic CPUfreq driver for ARM
41 big.LITTLE platform. This gets frequency tables from DT.
43 config ARM_VEXPRESS_SPC_CPUFREQ
44 tristate "Versatile Express SPC based CPUfreq driver"
45 depends on ARM_BIG_LITTLE_CPUFREQ && ARCH_VEXPRESS_SPC
46 help
47 This add the CPUfreq driver support for Versatile Express
48 big.LITTLE platforms using SPC for power management.
50 config ARM_EXYNOS5440_CPUFREQ
51 tristate "SAMSUNG EXYNOS5440"
52 depends on SOC_EXYNOS5440
53 depends on HAVE_CLK && OF
54 select PM_OPP
55 default y
56 help
57 This adds the CPUFreq driver for Samsung EXYNOS5440
58 SoC. The nature of exynos5440 clock controller is
59 different than previous exynos controllers so not using
60 the common exynos framework.
62 If in doubt, say N.
64 config ARM_HIGHBANK_CPUFREQ
65 tristate "Calxeda Highbank-based"
66 depends on ARCH_HIGHBANK && CPUFREQ_DT && REGULATOR
67 default m
68 help
69 This adds the CPUFreq driver for Calxeda Highbank SoC
70 based boards.
72 If in doubt, say N.
74 config ARM_DB8500_CPUFREQ
75 tristate "ST-Ericsson DB8500 cpufreq" if COMPILE_TEST && !ARCH_U8500
76 default ARCH_U8500
77 depends on HAS_IOMEM
78 depends on !CPU_THERMAL || THERMAL
79 help
80 This adds the CPUFreq driver for ST-Ericsson Ux500 (DB8500) SoC
81 series.
83 config ARM_IMX6Q_CPUFREQ
84 tristate "Freescale i.MX6 cpufreq support"
85 depends on ARCH_MXC
86 depends on REGULATOR_ANATOP
87 select PM_OPP
88 help
89 This adds cpufreq driver support for Freescale i.MX6 series SoCs.
91 If in doubt, say N.
93 config ARM_KIRKWOOD_CPUFREQ
94 def_bool MACH_KIRKWOOD
95 help
96 This adds the CPUFreq driver for Marvell Kirkwood
97 SoCs.
99 config ARM_MT8173_CPUFREQ
100 tristate "Mediatek MT8173 CPUFreq support"
101 depends on ARCH_MEDIATEK && REGULATOR
102 depends on ARM64 || (ARM_CPU_TOPOLOGY && COMPILE_TEST)
103 depends on !CPU_THERMAL || THERMAL
104 select PM_OPP
105 help
106 This adds the CPUFreq driver support for Mediatek MT8173 SoC.
108 config ARM_OMAP2PLUS_CPUFREQ
109 bool "TI OMAP2+"
110 depends on ARCH_OMAP2PLUS
111 default ARCH_OMAP2PLUS
113 config ARM_S3C_CPUFREQ
114 bool
115 help
116 Internal configuration node for common cpufreq on Samsung SoC
118 config ARM_S3C24XX_CPUFREQ
119 bool "CPUfreq driver for Samsung S3C24XX series CPUs (EXPERIMENTAL)"
120 depends on ARCH_S3C24XX
121 select ARM_S3C_CPUFREQ
122 help
123 This enables the CPUfreq driver for the Samsung S3C24XX family
124 of CPUs.
126 For details, take a look at <file:Documentation/cpu-freq>.
128 If in doubt, say N.
130 config ARM_S3C24XX_CPUFREQ_DEBUG
131 bool "Debug CPUfreq Samsung driver core"
132 depends on ARM_S3C24XX_CPUFREQ
133 help
134 Enable s3c_freq_dbg for the Samsung S3C CPUfreq core
136 config ARM_S3C24XX_CPUFREQ_IODEBUG
137 bool "Debug CPUfreq Samsung driver IO timing"
138 depends on ARM_S3C24XX_CPUFREQ
139 help
140 Enable s3c_freq_iodbg for the Samsung S3C CPUfreq core
142 config ARM_S3C24XX_CPUFREQ_DEBUGFS
143 bool "Export debugfs for CPUFreq"
144 depends on ARM_S3C24XX_CPUFREQ && DEBUG_FS
145 help
146 Export status information via debugfs.
148 config ARM_S3C2410_CPUFREQ
149 bool
150 depends on ARM_S3C24XX_CPUFREQ && CPU_S3C2410
151 select S3C2410_CPUFREQ_UTILS
152 help
153 CPU Frequency scaling support for S3C2410
155 config ARM_S3C2412_CPUFREQ
156 bool
157 depends on ARM_S3C24XX_CPUFREQ && CPU_S3C2412
158 default y
159 select S3C2412_IOTIMING
160 help
161 CPU Frequency scaling support for S3C2412 and S3C2413 SoC CPUs.
163 config ARM_S3C2416_CPUFREQ
164 bool "S3C2416 CPU Frequency scaling support"
165 depends on CPU_S3C2416
166 help
167 This adds the CPUFreq driver for the Samsung S3C2416 and
168 S3C2450 SoC. The S3C2416 supports changing the rate of the
169 armdiv clock source and also entering a so called dynamic
170 voltage scaling mode in which it is possible to reduce the
171 core voltage of the CPU.
173 If in doubt, say N.
175 config ARM_S3C2416_CPUFREQ_VCORESCALE
176 bool "Allow voltage scaling for S3C2416 arm core"
177 depends on ARM_S3C2416_CPUFREQ && REGULATOR
178 help
179 Enable CPU voltage scaling when entering the dvs mode.
180 It uses information gathered through existing hardware and
181 tests but not documented in any datasheet.
183 If in doubt, say N.
185 config ARM_S3C2440_CPUFREQ
186 bool "S3C2440/S3C2442 CPU Frequency scaling support"
187 depends on ARM_S3C24XX_CPUFREQ && (CPU_S3C2440 || CPU_S3C2442)
188 select S3C2410_CPUFREQ_UTILS
189 default y
190 help
191 CPU Frequency scaling support for S3C2440 and S3C2442 SoC CPUs.
193 config ARM_S3C64XX_CPUFREQ
194 bool "Samsung S3C64XX"
195 depends on CPU_S3C6410
196 default y
197 help
198 This adds the CPUFreq driver for Samsung S3C6410 SoC.
200 If in doubt, say N.
202 config ARM_S5PV210_CPUFREQ
203 bool "Samsung S5PV210 and S5PC110"
204 depends on CPU_S5PV210
205 default y
206 help
207 This adds the CPUFreq driver for Samsung S5PV210 and
208 S5PC110 SoCs.
210 If in doubt, say N.
212 config ARM_SA1100_CPUFREQ
213 bool
215 config ARM_SA1110_CPUFREQ
216 bool
218 config ARM_SCPI_CPUFREQ
219 tristate "SCPI based CPUfreq driver"
220 depends on ARM_BIG_LITTLE_CPUFREQ && ARM_SCPI_PROTOCOL && COMMON_CLK_SCPI
221 help
222 This adds the CPUfreq driver support for ARM big.LITTLE platforms
223 using SCPI protocol for CPU power management.
225 This driver uses SCPI Message Protocol driver to interact with the
226 firmware providing the CPU DVFS functionality.
228 config ARM_SPEAR_CPUFREQ
229 bool "SPEAr CPUFreq support"
230 depends on PLAT_SPEAR
231 default y
232 help
233 This adds the CPUFreq driver support for SPEAr SOCs.
235 config ARM_STI_CPUFREQ
236 tristate "STi CPUFreq support"
237 depends on SOC_STIH407
238 help
239 This driver uses the generic OPP framework to match the running
240 platform with a predefined set of suitable values. If not provided
241 we will fall-back so safe-values contained in Device Tree. Enable
242 this config option if you wish to add CPUFreq support for STi based
243 SoCs.
245 config ARM_TEGRA20_CPUFREQ
246 bool "Tegra20 CPUFreq support"
247 depends on ARCH_TEGRA
248 default y
249 help
250 This adds the CPUFreq driver support for Tegra20 SOCs.
252 config ARM_TEGRA124_CPUFREQ
253 tristate "Tegra124 CPUFreq support"
254 depends on ARCH_TEGRA && CPUFREQ_DT && REGULATOR
255 default y
256 help
257 This adds the CPUFreq driver support for Tegra124 SOCs.
259 config ARM_TEGRA186_CPUFREQ
260 tristate "Tegra186 CPUFreq support"
261 depends on ARCH_TEGRA && TEGRA_BPMP
262 help
263 This adds the CPUFreq driver support for Tegra186 SOCs.
265 config ARM_TI_CPUFREQ
266 bool "Texas Instruments CPUFreq support"
267 depends on ARCH_OMAP2PLUS
268 help
269 This driver enables valid OPPs on the running platform based on
270 values contained within the SoC in use. Enable this in order to
271 use the cpufreq-dt driver on all Texas Instruments platforms that
272 provide dt based operating-points-v2 tables with opp-supported-hw
273 data provided. Required for cpufreq support on AM335x, AM437x,
274 DRA7x, and AM57x platforms.
276 config ARM_PXA2xx_CPUFREQ
277 tristate "Intel PXA2xx CPUfreq driver"
278 depends on PXA27x || PXA25x
279 help
280 This add the CPUFreq driver support for Intel PXA2xx SOCs.
282 If in doubt, say N.
284 config ACPI_CPPC_CPUFREQ
285 tristate "CPUFreq driver based on the ACPI CPPC spec"
286 depends on ACPI_PROCESSOR
287 select ACPI_CPPC_LIB
288 default n
289 help
290 This adds a CPUFreq driver which uses CPPC methods
291 as described in the ACPIv5.1 spec. CPPC stands for
292 Collaborative Processor Performance Controls. It
293 is based on an abstract continuous scale of CPU
294 performance values which allows the remote power
295 processor to flexibly optimize for power and
296 performance. CPPC relies on power management firmware
297 support for its operation.
299 If in doubt, say N.