xref: /openbmc/linux/drivers/cpufreq/Kconfig.x86 (revision bb3982b4)
1# SPDX-License-Identifier: GPL-2.0-only
2#
3# x86 CPU Frequency scaling drivers
4#
5
6config X86_INTEL_PSTATE
7       bool "Intel P state control"
8       depends on X86
9       select ACPI_PROCESSOR if ACPI
10       select ACPI_CPPC_LIB if X86_64 && ACPI && SCHED_MC_PRIO
11       help
12          This driver provides a P state for Intel core processors.
13	  The driver implements an internal governor and will become
14          the scaling driver and governor for Sandy bridge processors.
15
16	  When this driver is enabled it will become the preferred
17          scaling driver for Sandy bridge processors.
18
19	  If in doubt, say N.
20
21config X86_PCC_CPUFREQ
22	tristate "Processor Clocking Control interface driver"
23	depends on ACPI && ACPI_PROCESSOR
24	help
25	  This driver adds support for the PCC interface.
26
27	  For details, take a look at:
28	  <file:Documentation/cpu-freq/pcc-cpufreq.txt>.
29
30	  To compile this driver as a module, choose M here: the
31	  module will be called pcc-cpufreq.
32
33	  If in doubt, say N.
34
35config X86_ACPI_CPUFREQ
36	tristate "ACPI Processor P-States driver"
37	depends on ACPI_PROCESSOR
38	help
39	  This driver adds a CPUFreq driver which utilizes the ACPI
40	  Processor Performance States.
41	  This driver also supports Intel Enhanced Speedstep and newer
42	  AMD CPUs.
43
44	  To compile this driver as a module, choose M here: the
45	  module will be called acpi-cpufreq.
46
47	  For details, take a look at <file:Documentation/cpu-freq/>.
48
49	  If in doubt, say N.
50
51config X86_ACPI_CPUFREQ_CPB
52	default y
53	bool "Legacy cpb sysfs knob support for AMD CPUs"
54	depends on X86_ACPI_CPUFREQ && CPU_SUP_AMD
55	help
56	  The powernow-k8 driver used to provide a sysfs knob called "cpb"
57	  to disable the Core Performance Boosting feature of AMD CPUs. This
58	  file has now been superseded by the more generic "boost" entry.
59
60	  By enabling this option the acpi_cpufreq driver provides the old
61	  entry in addition to the new boost ones, for compatibility reasons.
62
63config X86_SFI_CPUFREQ
64	tristate "SFI Performance-States driver"
65	depends on X86_INTEL_MID && SFI
66	help
67	  This adds a CPUFreq driver for some Silvermont based Intel Atom
68	  architectures like Z34xx and Z35xx which enumerate processor
69	  performance states through SFI.
70
71	  If in doubt, say N.
72
73config ELAN_CPUFREQ
74	tristate "AMD Elan SC400 and SC410"
75	depends on MELAN
76	---help---
77	  This adds the CPUFreq driver for AMD Elan SC400 and SC410
78	  processors.
79
80	  You need to specify the processor maximum speed as boot
81	  parameter: elanfreq=maxspeed (in kHz) or as module
82	  parameter "max_freq".
83
84	  For details, take a look at <file:Documentation/cpu-freq/>.
85
86	  If in doubt, say N.
87
88config SC520_CPUFREQ
89	tristate "AMD Elan SC520"
90	depends on MELAN
91	---help---
92	  This adds the CPUFreq driver for AMD Elan SC520 processor.
93
94	  For details, take a look at <file:Documentation/cpu-freq/>.
95
96	  If in doubt, say N.
97
98
99config X86_POWERNOW_K6
100	tristate "AMD Mobile K6-2/K6-3 PowerNow!"
101	depends on X86_32
102	help
103	  This adds the CPUFreq driver for mobile AMD K6-2+ and mobile
104	  AMD K6-3+ processors.
105
106	  For details, take a look at <file:Documentation/cpu-freq/>.
107
108	  If in doubt, say N.
109
110config X86_POWERNOW_K7
111	tristate "AMD Mobile Athlon/Duron PowerNow!"
112	depends on X86_32
113	help
114	  This adds the CPUFreq driver for mobile AMD K7 mobile processors.
115
116	  For details, take a look at <file:Documentation/cpu-freq/>.
117
118	  If in doubt, say N.
119
120config X86_POWERNOW_K7_ACPI
121	bool
122	depends on X86_POWERNOW_K7 && ACPI_PROCESSOR
123	depends on !(X86_POWERNOW_K7 = y && ACPI_PROCESSOR = m)
124	depends on X86_32
125	default y
126
127config X86_POWERNOW_K8
128	tristate "AMD Opteron/Athlon64 PowerNow!"
129	depends on ACPI && ACPI_PROCESSOR && X86_ACPI_CPUFREQ
130	help
131	  This adds the CPUFreq driver for K8/early Opteron/Athlon64 processors.
132	  Support for K10 and newer processors is now in acpi-cpufreq.
133
134	  To compile this driver as a module, choose M here: the
135	  module will be called powernow-k8.
136
137	  For details, take a look at <file:Documentation/cpu-freq/>.
138
139config X86_AMD_FREQ_SENSITIVITY
140	tristate "AMD frequency sensitivity feedback powersave bias"
141	depends on CPU_FREQ_GOV_ONDEMAND && X86_ACPI_CPUFREQ && CPU_SUP_AMD
142	help
143	  This adds AMD-specific powersave bias function to the ondemand
144	  governor, which allows it to make more power-conscious frequency
145	  change decisions based on feedback from hardware (available on AMD
146	  Family 16h and above).
147
148	  Hardware feedback tells software how "sensitive" to frequency changes
149	  the CPUs' workloads are. CPU-bound workloads will be more sensitive
150	  -- they will perform better as frequency increases. Memory/IO-bound
151	  workloads will be less sensitive -- they will not necessarily perform
152	  better as frequency increases.
153
154	  If in doubt, say N.
155
156config X86_GX_SUSPMOD
157	tristate "Cyrix MediaGX/NatSemi Geode Suspend Modulation"
158	depends on X86_32 && PCI
159	help
160	 This add the CPUFreq driver for NatSemi Geode processors which
161	 support suspend modulation.
162
163	 For details, take a look at <file:Documentation/cpu-freq/>.
164
165	 If in doubt, say N.
166
167config X86_SPEEDSTEP_CENTRINO
168	tristate "Intel Enhanced SpeedStep (deprecated)"
169	select X86_SPEEDSTEP_CENTRINO_TABLE if X86_32
170	depends on X86_32 || (X86_64 && ACPI_PROCESSOR)
171	help
172	  This is deprecated and this functionality is now merged into
173	  acpi_cpufreq (X86_ACPI_CPUFREQ). Use that driver instead of
174	  speedstep_centrino.
175	  This adds the CPUFreq driver for Enhanced SpeedStep enabled
176	  mobile CPUs.  This means Intel Pentium M (Centrino) CPUs
177	  or 64bit enabled Intel Xeons.
178
179	  To compile this driver as a module, choose M here: the
180	  module will be called speedstep-centrino.
181
182	  For details, take a look at <file:Documentation/cpu-freq/>.
183
184	  If in doubt, say N.
185
186config X86_SPEEDSTEP_CENTRINO_TABLE
187	bool "Built-in tables for Banias CPUs"
188	depends on X86_32 && X86_SPEEDSTEP_CENTRINO
189	default y
190	help
191	  Use built-in tables for Banias CPUs if ACPI encoding
192	  is not available.
193
194	  If in doubt, say N.
195
196config X86_SPEEDSTEP_ICH
197	tristate "Intel Speedstep on ICH-M chipsets (ioport interface)"
198	depends on X86_32
199	help
200	  This adds the CPUFreq driver for certain mobile Intel Pentium III
201	  (Coppermine), all mobile Intel Pentium III-M (Tualatin) and all
202	  mobile Intel Pentium 4 P4-M on systems which have an Intel ICH2,
203	  ICH3 or ICH4 southbridge.
204
205	  For details, take a look at <file:Documentation/cpu-freq/>.
206
207	  If in doubt, say N.
208
209config X86_SPEEDSTEP_SMI
210	tristate "Intel SpeedStep on 440BX/ZX/MX chipsets (SMI interface)"
211	depends on X86_32
212	help
213	  This adds the CPUFreq driver for certain mobile Intel Pentium III
214	  (Coppermine), all mobile Intel Pentium III-M (Tualatin)
215	  on systems which have an Intel 440BX/ZX/MX southbridge.
216
217	  For details, take a look at <file:Documentation/cpu-freq/>.
218
219	  If in doubt, say N.
220
221config X86_P4_CLOCKMOD
222	tristate "Intel Pentium 4 clock modulation"
223	help
224	  This adds the CPUFreq driver for Intel Pentium 4 / XEON
225	  processors.  When enabled it will lower CPU temperature by skipping
226	  clocks.
227
228	  This driver should be only used in exceptional
229	  circumstances when very low power is needed because it causes severe
230	  slowdowns and noticeable latencies.  Normally Speedstep should be used
231	  instead.
232
233	  To compile this driver as a module, choose M here: the
234	  module will be called p4-clockmod.
235
236	  For details, take a look at <file:Documentation/cpu-freq/>.
237
238	  Unless you are absolutely sure say N.
239
240config X86_CPUFREQ_NFORCE2
241	tristate "nVidia nForce2 FSB changing"
242	depends on X86_32
243	help
244	  This adds the CPUFreq driver for FSB changing on nVidia nForce2
245	  platforms.
246
247	  For details, take a look at <file:Documentation/cpu-freq/>.
248
249	  If in doubt, say N.
250
251config X86_LONGRUN
252	tristate "Transmeta LongRun"
253	depends on X86_32
254	help
255	  This adds the CPUFreq driver for Transmeta Crusoe and Efficeon processors
256	  which support LongRun.
257
258	  For details, take a look at <file:Documentation/cpu-freq/>.
259
260	  If in doubt, say N.
261
262config X86_LONGHAUL
263	tristate "VIA Cyrix III Longhaul"
264	depends on X86_32 && ACPI_PROCESSOR
265	help
266	  This adds the CPUFreq driver for VIA Samuel/CyrixIII,
267	  VIA Cyrix Samuel/C3, VIA Cyrix Ezra and VIA Cyrix Ezra-T
268	  processors.
269
270	  For details, take a look at <file:Documentation/cpu-freq/>.
271
272	  If in doubt, say N.
273
274config X86_E_POWERSAVER
275	tristate "VIA C7 Enhanced PowerSaver (DANGEROUS)"
276	depends on X86_32 && ACPI_PROCESSOR
277	help
278	  This adds the CPUFreq driver for VIA C7 processors.  However, this driver
279	  does not have any safeguards to prevent operating the CPU out of spec
280	  and is thus considered dangerous.  Please use the regular ACPI cpufreq
281	  driver, enabled by CONFIG_X86_ACPI_CPUFREQ.
282
283	  If in doubt, say N.
284
285comment "shared options"
286
287config X86_SPEEDSTEP_LIB
288	tristate
289	default (X86_SPEEDSTEP_ICH || X86_SPEEDSTEP_SMI || X86_P4_CLOCKMOD)
290
291config X86_SPEEDSTEP_RELAXED_CAP_CHECK
292	bool "Relaxed speedstep capability checks"
293	depends on X86_32 && (X86_SPEEDSTEP_SMI || X86_SPEEDSTEP_ICH)
294	help
295	  Don't perform all checks for a speedstep capable system which would
296	  normally be done. Some ancient or strange systems, though speedstep
297	  capable, don't always indicate that they are speedstep capable. This
298	  option lets the probing code bypass some of those checks if the
299	  parameter "relaxed_check=1" is passed to the module.
300
301