Linux Audio

Check our new training course

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