xref: /openbmc/linux/drivers/cpufreq/Kconfig.arm (revision cd4d09ec)
1#
2# ARM CPU Frequency scaling drivers
3#
4
5# big LITTLE core layer and glue drivers
6config 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
15config 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
22config 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
29config 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
43config 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
53config 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
62config 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
72config 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
80config ARM_KIRKWOOD_CPUFREQ
81	def_bool MACH_KIRKWOOD
82	help
83	  This adds the CPUFreq driver for Marvell Kirkwood
84	  SoCs.
85
86config ARM_MT8173_CPUFREQ
87	bool "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=y
91	select PM_OPP
92	help
93	  This adds the CPUFreq driver support for Mediatek MT8173 SoC.
94
95config ARM_OMAP2PLUS_CPUFREQ
96	bool "TI OMAP2+"
97	depends on ARCH_OMAP2PLUS
98	default ARCH_OMAP2PLUS
99
100config ARM_S3C_CPUFREQ
101	bool
102	help
103	  Internal configuration node for common cpufreq on Samsung SoC
104
105config 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
117config 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
123config 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
129config 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
135config 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
142config 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
150config 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
162config 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
172config 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
180config 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
189config 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
199config ARM_SA1100_CPUFREQ
200	bool
201
202config ARM_SA1110_CPUFREQ
203	bool
204
205config 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
215config 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
222config 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
232config 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
239config 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
246config 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
254config 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.
270