]> git.kernelconcepts.de Git - karo-tx-linux.git/blob - drivers/cpufreq/Kconfig.arm
cpufreq: ti: Add cpufreq driver to determine available OPPs at runtime
[karo-tx-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_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.
23
24           Say Y, if you have a Broadcom SoC with AVS support for DFS or DVFS.
25
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.
33
34           If in doubt, say N.
35
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.
42
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.
49
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.
61
62           If in doubt, say N.
63
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.
71
72           If in doubt, say N.
73
74 config ARM_IMX6Q_CPUFREQ
75         tristate "Freescale i.MX6 cpufreq support"
76         depends on ARCH_MXC
77         depends on REGULATOR_ANATOP
78         select PM_OPP
79         help
80           This adds cpufreq driver support for Freescale i.MX6 series SoCs.
81
82           If in doubt, say N.
83
84 config ARM_KIRKWOOD_CPUFREQ
85         def_bool MACH_KIRKWOOD
86         help
87           This adds the CPUFreq driver for Marvell Kirkwood
88           SoCs.
89
90 config ARM_MT8173_CPUFREQ
91         tristate "Mediatek MT8173 CPUFreq support"
92         depends on ARCH_MEDIATEK && REGULATOR
93         depends on ARM64 || (ARM_CPU_TOPOLOGY && COMPILE_TEST)
94         depends on !CPU_THERMAL || THERMAL
95         select PM_OPP
96         help
97           This adds the CPUFreq driver support for Mediatek MT8173 SoC.
98
99 config ARM_OMAP2PLUS_CPUFREQ
100         bool "TI OMAP2+"
101         depends on ARCH_OMAP2PLUS
102         default ARCH_OMAP2PLUS
103
104 config ARM_S3C_CPUFREQ
105         bool
106         help
107           Internal configuration node for common cpufreq on Samsung SoC
108
109 config ARM_S3C24XX_CPUFREQ
110         bool "CPUfreq driver for Samsung S3C24XX series CPUs (EXPERIMENTAL)"
111         depends on ARCH_S3C24XX
112         select ARM_S3C_CPUFREQ
113         help
114           This enables the CPUfreq driver for the Samsung S3C24XX family
115           of CPUs.
116
117           For details, take a look at <file:Documentation/cpu-freq>.
118
119           If in doubt, say N.
120
121 config ARM_S3C24XX_CPUFREQ_DEBUG
122         bool "Debug CPUfreq Samsung driver core"
123         depends on ARM_S3C24XX_CPUFREQ
124         help
125           Enable s3c_freq_dbg for the Samsung S3C CPUfreq core
126
127 config ARM_S3C24XX_CPUFREQ_IODEBUG
128         bool "Debug CPUfreq Samsung driver IO timing"
129         depends on ARM_S3C24XX_CPUFREQ
130         help
131           Enable s3c_freq_iodbg for the Samsung S3C CPUfreq core
132
133 config ARM_S3C24XX_CPUFREQ_DEBUGFS
134         bool "Export debugfs for CPUFreq"
135         depends on ARM_S3C24XX_CPUFREQ && DEBUG_FS
136         help
137           Export status information via debugfs.
138
139 config ARM_S3C2410_CPUFREQ
140         bool
141         depends on ARM_S3C24XX_CPUFREQ && CPU_S3C2410
142         select S3C2410_CPUFREQ_UTILS
143         help
144           CPU Frequency scaling support for S3C2410
145
146 config ARM_S3C2412_CPUFREQ
147         bool
148         depends on ARM_S3C24XX_CPUFREQ && CPU_S3C2412
149         default y
150         select S3C2412_IOTIMING
151         help
152           CPU Frequency scaling support for S3C2412 and S3C2413 SoC CPUs.
153
154 config ARM_S3C2416_CPUFREQ
155         bool "S3C2416 CPU Frequency scaling support"
156         depends on CPU_S3C2416
157         help
158           This adds the CPUFreq driver for the Samsung S3C2416 and
159           S3C2450 SoC. The S3C2416 supports changing the rate of the
160           armdiv clock source and also entering a so called dynamic
161           voltage scaling mode in which it is possible to reduce the
162           core voltage of the CPU.
163
164           If in doubt, say N.
165
166 config ARM_S3C2416_CPUFREQ_VCORESCALE
167         bool "Allow voltage scaling for S3C2416 arm core"
168         depends on ARM_S3C2416_CPUFREQ && REGULATOR
169         help
170           Enable CPU voltage scaling when entering the dvs mode.
171           It uses information gathered through existing hardware and
172           tests but not documented in any datasheet.
173
174           If in doubt, say N.
175
176 config ARM_S3C2440_CPUFREQ
177         bool "S3C2440/S3C2442 CPU Frequency scaling support"
178         depends on ARM_S3C24XX_CPUFREQ && (CPU_S3C2440 || CPU_S3C2442)
179         select S3C2410_CPUFREQ_UTILS
180         default y
181         help
182           CPU Frequency scaling support for S3C2440 and S3C2442 SoC CPUs.
183
184 config ARM_S3C64XX_CPUFREQ
185         bool "Samsung S3C64XX"
186         depends on CPU_S3C6410
187         default y
188         help
189           This adds the CPUFreq driver for Samsung S3C6410 SoC.
190
191           If in doubt, say N.
192
193 config ARM_S5PV210_CPUFREQ
194         bool "Samsung S5PV210 and S5PC110"
195         depends on CPU_S5PV210
196         default y
197         help
198           This adds the CPUFreq driver for Samsung S5PV210 and
199           S5PC110 SoCs.
200
201           If in doubt, say N.
202
203 config ARM_SA1100_CPUFREQ
204         bool
205
206 config ARM_SA1110_CPUFREQ
207         bool
208
209 config ARM_SCPI_CPUFREQ
210         tristate "SCPI based CPUfreq driver"
211         depends on ARM_BIG_LITTLE_CPUFREQ && ARM_SCPI_PROTOCOL && COMMON_CLK_SCPI
212         help
213           This adds the CPUfreq driver support for ARM big.LITTLE platforms
214           using SCPI protocol for CPU power management.
215
216           This driver uses SCPI Message Protocol driver to interact with the
217           firmware providing the CPU DVFS functionality.
218
219 config ARM_SPEAR_CPUFREQ
220         bool "SPEAr CPUFreq support"
221         depends on PLAT_SPEAR
222         default y
223         help
224           This adds the CPUFreq driver support for SPEAr SOCs.
225
226 config ARM_STI_CPUFREQ
227         tristate "STi CPUFreq support"
228         depends on SOC_STIH407
229         help
230           This driver uses the generic OPP framework to match the running
231           platform with a predefined set of suitable values.  If not provided
232           we will fall-back so safe-values contained in Device Tree.  Enable
233           this config option if you wish to add CPUFreq support for STi based
234           SoCs.
235
236 config ARM_TEGRA20_CPUFREQ
237         bool "Tegra20 CPUFreq support"
238         depends on ARCH_TEGRA
239         default y
240         help
241           This adds the CPUFreq driver support for Tegra20 SOCs.
242
243 config ARM_TEGRA124_CPUFREQ
244         tristate "Tegra124 CPUFreq support"
245         depends on ARCH_TEGRA && CPUFREQ_DT && REGULATOR
246         default y
247         help
248           This adds the CPUFreq driver support for Tegra124 SOCs.
249
250 config ARM_TI_CPUFREQ
251         bool "Texas Instruments CPUFreq support"
252         depends on ARCH_OMAP2PLUS
253         help
254           This driver enables valid OPPs on the running platform based on
255           values contained within the SoC in use. Enable this in order to
256           use the cpufreq-dt driver on all Texas Instruments platforms that
257           provide dt based operating-points-v2 tables with opp-supported-hw
258           data provided. Required for cpufreq support on AM335x, AM437x,
259           DRA7x, and AM57x platforms.
260
261 config ARM_PXA2xx_CPUFREQ
262         tristate "Intel PXA2xx CPUfreq driver"
263         depends on PXA27x || PXA25x
264         help
265           This add the CPUFreq driver support for Intel PXA2xx SOCs.
266
267           If in doubt, say N.
268
269 config ACPI_CPPC_CPUFREQ
270         tristate "CPUFreq driver based on the ACPI CPPC spec"
271         depends on ACPI
272         select ACPI_CPPC_LIB
273         default n
274         help
275           This adds a CPUFreq driver which uses CPPC methods
276           as described in the ACPIv5.1 spec. CPPC stands for
277           Collaborative Processor Performance Controls. It
278           is based on an abstract continuous scale of CPU
279           performance values which allows the remote power
280           processor to flexibly optimize for power and
281           performance. CPPC relies on power management firmware
282           support for its operation.
283
284           If in doubt, say N.