diff options
author | Dirk Brandewie <dirk.j.brandewie@intel.com> | 2014-11-06 12:40:47 -0500 |
---|---|---|
committer | Rafael J. Wysocki <rafael.j.wysocki@intel.com> | 2014-11-11 18:04:38 -0500 |
commit | 2f86dc4cddcb21290ca099e1dce2a53533c86e0b (patch) | |
tree | 4f713a464f066752b8f190fafe1d23bc37118d59 /Documentation/cpu-freq | |
parent | 77873887729aaddec5cd27203a6ce8c4987733e4 (diff) |
intel_pstate: Add support for HWP
Add support of Hardware Managed Performance States (HWP) described in Volume 3
section 14.4 of the SDM.
With HWP enbaled intel_pstate will no longer be responsible for selecting P
states for the processor. intel_pstate will continue to register to
the cpufreq core as the scaling driver for CPUs implementing
HWP. In HWP mode intel_pstate provides three functions reporting
frequency to the cpufreq core, support for the set_policy() interface
from the core and maintaining the intel_pstate sysfs interface in
/sys/devices/system/cpu/intel_pstate. User preferences expressed via
the set_policy() interface or the sysfs interface are forwared to the
CPU via the HWP MSR interface.
Signed-off-by: Dirk Brandewie <dirk.j.brandewie@intel.com>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Diffstat (limited to 'Documentation/cpu-freq')
-rw-r--r-- | Documentation/cpu-freq/intel-pstate.txt | 37 |
1 files changed, 25 insertions, 12 deletions
diff --git a/Documentation/cpu-freq/intel-pstate.txt b/Documentation/cpu-freq/intel-pstate.txt index a69ffe1d54d5..765d7fc0e692 100644 --- a/Documentation/cpu-freq/intel-pstate.txt +++ b/Documentation/cpu-freq/intel-pstate.txt | |||
@@ -1,17 +1,28 @@ | |||
1 | Intel P-state driver | 1 | Intel P-state driver |
2 | -------------------- | 2 | -------------------- |
3 | 3 | ||
4 | This driver implements a scaling driver with an internal governor for | 4 | This driver provides an interface to control the P state selection for |
5 | Intel Core processors. The driver follows the same model as the | 5 | SandyBridge+ Intel processors. The driver can operate two different |
6 | Transmeta scaling driver (longrun.c) and implements the setpolicy() | 6 | modes based on the processor model legacy and Hardware P state (HWP) |
7 | instead of target(). Scaling drivers that implement setpolicy() are | 7 | mode. |
8 | assumed to implement internal governors by the cpufreq core. All the | 8 | |
9 | logic for selecting the current P state is contained within the | 9 | In legacy mode the driver implements a scaling driver with an internal |
10 | driver; no external governor is used by the cpufreq core. | 10 | governor for Intel Core processors. The driver follows the same model |
11 | 11 | as the Transmeta scaling driver (longrun.c) and implements the | |
12 | Intel SandyBridge+ processors are supported. | 12 | setpolicy() instead of target(). Scaling drivers that implement |
13 | 13 | setpolicy() are assumed to implement internal governors by the cpufreq | |
14 | New sysfs files for controlling P state selection have been added to | 14 | core. All the logic for selecting the current P state is contained |
15 | within the driver; no external governor is used by the cpufreq core. | ||
16 | |||
17 | In HWP mode P state selection is implemented in the processor | ||
18 | itself. The driver provides the interfaces between the cpufreq core and | ||
19 | the processor to control P state selection based on user preferences | ||
20 | and reporting frequency to the cpufreq core. In this mode the | ||
21 | internal governor code is disabled. | ||
22 | |||
23 | In addtion to the interfaces provided by the cpufreq core for | ||
24 | controlling frequency the driver provides sysfs files for | ||
25 | controlling P state selection. These files have been added to | ||
15 | /sys/devices/system/cpu/intel_pstate/ | 26 | /sys/devices/system/cpu/intel_pstate/ |
16 | 27 | ||
17 | max_perf_pct: limits the maximum P state that will be requested by | 28 | max_perf_pct: limits the maximum P state that will be requested by |
@@ -33,7 +44,9 @@ frequency is fiction for Intel Core processors. Even if the scaling | |||
33 | driver selects a single P state the actual frequency the processor | 44 | driver selects a single P state the actual frequency the processor |
34 | will run at is selected by the processor itself. | 45 | will run at is selected by the processor itself. |
35 | 46 | ||
36 | New debugfs files have also been added to /sys/kernel/debug/pstate_snb/ | 47 | For legacy mode debugfs files have also been added to allow tuning of |
48 | the internal governor algorythm. These files are located at | ||
49 | /sys/kernel/debug/pstate_snb/ These files are NOT present in HWP mode. | ||
37 | 50 | ||
38 | deadband | 51 | deadband |
39 | d_gain_pct | 52 | d_gain_pct |