mirror of
https://github.com/AuxXxilium/linux_dsm_epyc7002.git
synced 2024-11-25 08:30:54 +07:00
93f0822dff
Add a P-state driver for the Intel Sandy bridge processor. In cpufreq terminology this driver implements a scaling driver with an internal governor. When built into the the kernel this driver will be the preferred scaling driver for Sandy bridge processors. In addition to the interfaces provided by the cpufreq subsystem for controlling scaling drivers. The user may control the behavior of the driver via three sysfs files located in "/sys/devices/system/cpu/intel_pstate". max_perf_pct: limits the maximum P state that will be requested by the driver stated as a percentage of the avail performance. min_perf_pct: limits the minimum P state that will be requested by the driver stated as a percentage of the avail performance. no_turbo: limits the driver to selecting P states below the turbo frequency range. Signed-off-by: Dirk Brandewie <dirk.j.brandewie@intel.com> Acked-by: Viresh Kumar <viresh.kumar@linaro.org> Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
288 lines
8.4 KiB
Plaintext
288 lines
8.4 KiB
Plaintext
#
|
|
# x86 CPU Frequency scaling drivers
|
|
#
|
|
|
|
config X86_INTEL_PSTATE
|
|
tristate "Intel P state control"
|
|
depends on X86
|
|
help
|
|
This driver provides a P state for Intel core processors.
|
|
The driver implements an internal governor and will become
|
|
the scaling driver and governor for Sandy bridge processors.
|
|
|
|
When this driver is enabled it will become the perferred
|
|
scaling driver for Sandy bridge processors.
|
|
|
|
Note: This driver should be built with the same settings as
|
|
the other scaling drivers configured into the system
|
|
(module/built-in) in order for the driver to register itself
|
|
as the scaling driver on the system.
|
|
|
|
If in doubt, say N.
|
|
|
|
config X86_PCC_CPUFREQ
|
|
tristate "Processor Clocking Control interface driver"
|
|
depends on ACPI && ACPI_PROCESSOR
|
|
help
|
|
This driver adds support for the PCC interface.
|
|
|
|
For details, take a look at:
|
|
<file:Documentation/cpu-freq/pcc-cpufreq.txt>.
|
|
|
|
To compile this driver as a module, choose M here: the
|
|
module will be called pcc-cpufreq.
|
|
|
|
If in doubt, say N.
|
|
|
|
config X86_ACPI_CPUFREQ
|
|
tristate "ACPI Processor P-States driver"
|
|
select CPU_FREQ_TABLE
|
|
depends on ACPI_PROCESSOR
|
|
help
|
|
This driver adds a CPUFreq driver which utilizes the ACPI
|
|
Processor Performance States.
|
|
This driver also supports Intel Enhanced Speedstep and newer
|
|
AMD CPUs.
|
|
|
|
To compile this driver as a module, choose M here: the
|
|
module will be called acpi-cpufreq.
|
|
|
|
For details, take a look at <file:Documentation/cpu-freq/>.
|
|
|
|
If in doubt, say N.
|
|
|
|
config X86_ACPI_CPUFREQ_CPB
|
|
default y
|
|
bool "Legacy cpb sysfs knob support for AMD CPUs"
|
|
depends on X86_ACPI_CPUFREQ && CPU_SUP_AMD
|
|
help
|
|
The powernow-k8 driver used to provide a sysfs knob called "cpb"
|
|
to disable the Core Performance Boosting feature of AMD CPUs. This
|
|
file has now been superseeded by the more generic "boost" entry.
|
|
|
|
By enabling this option the acpi_cpufreq driver provides the old
|
|
entry in addition to the new boost ones, for compatibility reasons.
|
|
|
|
config ELAN_CPUFREQ
|
|
tristate "AMD Elan SC400 and SC410"
|
|
select CPU_FREQ_TABLE
|
|
depends on MELAN
|
|
---help---
|
|
This adds the CPUFreq driver for AMD Elan SC400 and SC410
|
|
processors.
|
|
|
|
You need to specify the processor maximum speed as boot
|
|
parameter: elanfreq=maxspeed (in kHz) or as module
|
|
parameter "max_freq".
|
|
|
|
For details, take a look at <file:Documentation/cpu-freq/>.
|
|
|
|
If in doubt, say N.
|
|
|
|
config SC520_CPUFREQ
|
|
tristate "AMD Elan SC520"
|
|
select CPU_FREQ_TABLE
|
|
depends on MELAN
|
|
---help---
|
|
This adds the CPUFreq driver for AMD Elan SC520 processor.
|
|
|
|
For details, take a look at <file:Documentation/cpu-freq/>.
|
|
|
|
If in doubt, say N.
|
|
|
|
|
|
config X86_POWERNOW_K6
|
|
tristate "AMD Mobile K6-2/K6-3 PowerNow!"
|
|
select CPU_FREQ_TABLE
|
|
depends on X86_32
|
|
help
|
|
This adds the CPUFreq driver for mobile AMD K6-2+ and mobile
|
|
AMD K6-3+ processors.
|
|
|
|
For details, take a look at <file:Documentation/cpu-freq/>.
|
|
|
|
If in doubt, say N.
|
|
|
|
config X86_POWERNOW_K7
|
|
tristate "AMD Mobile Athlon/Duron PowerNow!"
|
|
select CPU_FREQ_TABLE
|
|
depends on X86_32
|
|
help
|
|
This adds the CPUFreq driver for mobile AMD K7 mobile processors.
|
|
|
|
For details, take a look at <file:Documentation/cpu-freq/>.
|
|
|
|
If in doubt, say N.
|
|
|
|
config X86_POWERNOW_K7_ACPI
|
|
bool
|
|
depends on X86_POWERNOW_K7 && ACPI_PROCESSOR
|
|
depends on !(X86_POWERNOW_K7 = y && ACPI_PROCESSOR = m)
|
|
depends on X86_32
|
|
default y
|
|
|
|
config X86_POWERNOW_K8
|
|
tristate "AMD Opteron/Athlon64 PowerNow!"
|
|
select CPU_FREQ_TABLE
|
|
depends on ACPI && ACPI_PROCESSOR && X86_ACPI_CPUFREQ
|
|
help
|
|
This adds the CPUFreq driver for K8/early Opteron/Athlon64 processors.
|
|
Support for K10 and newer processors is now in acpi-cpufreq.
|
|
|
|
To compile this driver as a module, choose M here: the
|
|
module will be called powernow-k8.
|
|
|
|
For details, take a look at <file:Documentation/cpu-freq/>.
|
|
|
|
config X86_GX_SUSPMOD
|
|
tristate "Cyrix MediaGX/NatSemi Geode Suspend Modulation"
|
|
depends on X86_32 && PCI
|
|
help
|
|
This add the CPUFreq driver for NatSemi Geode processors which
|
|
support suspend modulation.
|
|
|
|
For details, take a look at <file:Documentation/cpu-freq/>.
|
|
|
|
If in doubt, say N.
|
|
|
|
config X86_SPEEDSTEP_CENTRINO
|
|
tristate "Intel Enhanced SpeedStep (deprecated)"
|
|
select CPU_FREQ_TABLE
|
|
select X86_SPEEDSTEP_CENTRINO_TABLE if X86_32
|
|
depends on X86_32 || (X86_64 && ACPI_PROCESSOR)
|
|
help
|
|
This is deprecated and this functionality is now merged into
|
|
acpi_cpufreq (X86_ACPI_CPUFREQ). Use that driver instead of
|
|
speedstep_centrino.
|
|
This adds the CPUFreq driver for Enhanced SpeedStep enabled
|
|
mobile CPUs. This means Intel Pentium M (Centrino) CPUs
|
|
or 64bit enabled Intel Xeons.
|
|
|
|
To compile this driver as a module, choose M here: the
|
|
module will be called speedstep-centrino.
|
|
|
|
For details, take a look at <file:Documentation/cpu-freq/>.
|
|
|
|
If in doubt, say N.
|
|
|
|
config X86_SPEEDSTEP_CENTRINO_TABLE
|
|
bool "Built-in tables for Banias CPUs"
|
|
depends on X86_32 && X86_SPEEDSTEP_CENTRINO
|
|
default y
|
|
help
|
|
Use built-in tables for Banias CPUs if ACPI encoding
|
|
is not available.
|
|
|
|
If in doubt, say N.
|
|
|
|
config X86_SPEEDSTEP_ICH
|
|
tristate "Intel Speedstep on ICH-M chipsets (ioport interface)"
|
|
select CPU_FREQ_TABLE
|
|
depends on X86_32
|
|
help
|
|
This adds the CPUFreq driver for certain mobile Intel Pentium III
|
|
(Coppermine), all mobile Intel Pentium III-M (Tualatin) and all
|
|
mobile Intel Pentium 4 P4-M on systems which have an Intel ICH2,
|
|
ICH3 or ICH4 southbridge.
|
|
|
|
For details, take a look at <file:Documentation/cpu-freq/>.
|
|
|
|
If in doubt, say N.
|
|
|
|
config X86_SPEEDSTEP_SMI
|
|
tristate "Intel SpeedStep on 440BX/ZX/MX chipsets (SMI interface)"
|
|
select CPU_FREQ_TABLE
|
|
depends on X86_32 && EXPERIMENTAL
|
|
help
|
|
This adds the CPUFreq driver for certain mobile Intel Pentium III
|
|
(Coppermine), all mobile Intel Pentium III-M (Tualatin)
|
|
on systems which have an Intel 440BX/ZX/MX southbridge.
|
|
|
|
For details, take a look at <file:Documentation/cpu-freq/>.
|
|
|
|
If in doubt, say N.
|
|
|
|
config X86_P4_CLOCKMOD
|
|
tristate "Intel Pentium 4 clock modulation"
|
|
select CPU_FREQ_TABLE
|
|
help
|
|
This adds the CPUFreq driver for Intel Pentium 4 / XEON
|
|
processors. When enabled it will lower CPU temperature by skipping
|
|
clocks.
|
|
|
|
This driver should be only used in exceptional
|
|
circumstances when very low power is needed because it causes severe
|
|
slowdowns and noticeable latencies. Normally Speedstep should be used
|
|
instead.
|
|
|
|
To compile this driver as a module, choose M here: the
|
|
module will be called p4-clockmod.
|
|
|
|
For details, take a look at <file:Documentation/cpu-freq/>.
|
|
|
|
Unless you are absolutely sure say N.
|
|
|
|
config X86_CPUFREQ_NFORCE2
|
|
tristate "nVidia nForce2 FSB changing"
|
|
depends on X86_32 && EXPERIMENTAL
|
|
help
|
|
This adds the CPUFreq driver for FSB changing on nVidia nForce2
|
|
platforms.
|
|
|
|
For details, take a look at <file:Documentation/cpu-freq/>.
|
|
|
|
If in doubt, say N.
|
|
|
|
config X86_LONGRUN
|
|
tristate "Transmeta LongRun"
|
|
depends on X86_32
|
|
help
|
|
This adds the CPUFreq driver for Transmeta Crusoe and Efficeon processors
|
|
which support LongRun.
|
|
|
|
For details, take a look at <file:Documentation/cpu-freq/>.
|
|
|
|
If in doubt, say N.
|
|
|
|
config X86_LONGHAUL
|
|
tristate "VIA Cyrix III Longhaul"
|
|
select CPU_FREQ_TABLE
|
|
depends on X86_32 && ACPI_PROCESSOR
|
|
help
|
|
This adds the CPUFreq driver for VIA Samuel/CyrixIII,
|
|
VIA Cyrix Samuel/C3, VIA Cyrix Ezra and VIA Cyrix Ezra-T
|
|
processors.
|
|
|
|
For details, take a look at <file:Documentation/cpu-freq/>.
|
|
|
|
If in doubt, say N.
|
|
|
|
config X86_E_POWERSAVER
|
|
tristate "VIA C7 Enhanced PowerSaver (DANGEROUS)"
|
|
select CPU_FREQ_TABLE
|
|
depends on X86_32 && EXPERIMENTAL
|
|
help
|
|
This adds the CPUFreq driver for VIA C7 processors. However, this driver
|
|
does not have any safeguards to prevent operating the CPU out of spec
|
|
and is thus considered dangerous. Please use the regular ACPI cpufreq
|
|
driver, enabled by CONFIG_X86_ACPI_CPUFREQ.
|
|
|
|
If in doubt, say N.
|
|
|
|
comment "shared options"
|
|
|
|
config X86_SPEEDSTEP_LIB
|
|
tristate
|
|
default (X86_SPEEDSTEP_ICH || X86_SPEEDSTEP_SMI || X86_P4_CLOCKMOD)
|
|
|
|
config X86_SPEEDSTEP_RELAXED_CAP_CHECK
|
|
bool "Relaxed speedstep capability checks"
|
|
depends on X86_32 && (X86_SPEEDSTEP_SMI || X86_SPEEDSTEP_ICH)
|
|
help
|
|
Don't perform all checks for a speedstep capable system which would
|
|
normally be done. Some ancient or strange systems, though speedstep
|
|
capable, don't always indicate that they are speedstep capable. This
|
|
option lets the probing code bypass some of those checks if the
|
|
parameter "relaxed_check=1" is passed to the module.
|
|
|