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