Linux 3.16-rc2
[linux/fpc-iii.git] / Documentation / cpu-freq / intel-pstate.txt
blobe742d21dbd96bcf3aa2aacd90fe5ef9ad4782810
1 Intel P-state driver
2 --------------------
4 This driver implements a scaling driver with an internal governor for
5 Intel Core processors.  The driver follows the same model as the
6 Transmeta scaling driver (longrun.c) and implements the setpolicy()
7 instead of target().  Scaling drivers that implement setpolicy() are
8 assumed to implement internal governors by the cpufreq core. All the
9 logic for selecting the current P state is contained within the
10 driver; no external governor is used by the cpufreq core.
12 Intel SandyBridge+ processors are supported.
14 New sysfs files for controlling P state selection have been added to
15 /sys/devices/system/cpu/intel_pstate/
17       max_perf_pct: limits the maximum P state that will be requested by
18       the driver stated as a percentage of the available performance.
20       min_perf_pct: limits the minimum P state that will be  requested by
21       the driver stated as a percentage of the available performance.
23       no_turbo: limits the driver to selecting P states below the turbo
24       frequency range.
26 For contemporary Intel processors, the frequency is controlled by the
27 processor itself and the P-states exposed to software are related to
28 performance levels.  The idea that frequency can be set to a single
29 frequency is fiction for Intel Core processors. Even if the scaling
30 driver selects a single P state the actual frequency the processor
31 will run at is selected by the processor itself.
33 New debugfs files have also been added to /sys/kernel/debug/pstate_snb/
35       deadband
36       d_gain_pct
37       i_gain_pct
38       p_gain_pct
39       sample_rate_ms
40       setpoint