2014-01-05 10:21:16

by Ramkumar Ramachandra

[permalink] [raw]
Subject: [PATCH v3] Documentation/cpu-freq: add intel-pstate.txt

The Intel P-state driver is currently undocumented. Add some
documentation based on the cover-letter sent with the original series.

Cc: Dirk Brandewie <[email protected]>
Cc: Rafael J. Wysocki <[email protected]>
Cc: Randy Dunlap <[email protected]>
Cc: Linux PM <[email protected]>
Acked-by: Randy Dunlap <[email protected]>
Signed-off-by: Ramkumar Ramachandra <[email protected]>
---
Documentation/cpu-freq/intel-pstate.txt | 40 +++++++++++++++++++++++++++++++++
1 file changed, 40 insertions(+)
create mode 100644 Documentation/cpu-freq/intel-pstate.txt

diff --git a/Documentation/cpu-freq/intel-pstate.txt b/Documentation/cpu-freq/intel-pstate.txt
new file mode 100644
index 0000000..e742d21
--- /dev/null
+++ b/Documentation/cpu-freq/intel-pstate.txt
@@ -0,0 +1,40 @@
+Intel P-state driver
+--------------------
+
+This driver implements a scaling driver with an internal governor for
+Intel Core processors. The driver follows the same model as the
+Transmeta scaling driver (longrun.c) and implements the setpolicy()
+instead of target(). Scaling drivers that implement setpolicy() are
+assumed to implement internal governors by the cpufreq core. All the
+logic for selecting the current P state is contained within the
+driver; no external governor is used by the cpufreq core.
+
+Intel SandyBridge+ processors are supported.
+
+New sysfs files for controlling P state selection have been added to
+/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 available performance.
+
+ min_perf_pct: limits the minimum P state that will be requested by
+ the driver stated as a percentage of the available performance.
+
+ no_turbo: limits the driver to selecting P states below the turbo
+ frequency range.
+
+For contemporary Intel processors, the frequency is controlled by the
+processor itself and the P-states exposed to software are related to
+performance levels. The idea that frequency can be set to a single
+frequency is fiction for Intel Core processors. Even if the scaling
+driver selects a single P state the actual frequency the processor
+will run at is selected by the processor itself.
+
+New debugfs files have also been added to /sys/kernel/debug/pstate_snb/
+
+ deadband
+ d_gain_pct
+ i_gain_pct
+ p_gain_pct
+ sample_rate_ms
+ setpoint
--
1.8.5.2.227.g53f3478


2014-01-06 00:54:06

by Rafael J. Wysocki

[permalink] [raw]
Subject: Re: [PATCH v3] Documentation/cpu-freq: add intel-pstate.txt

On Sunday, January 05, 2014 03:51:14 PM Ramkumar Ramachandra wrote:
> The Intel P-state driver is currently undocumented. Add some
> documentation based on the cover-letter sent with the original series.
>
> Cc: Dirk Brandewie <[email protected]>
> Cc: Rafael J. Wysocki <[email protected]>
> Cc: Randy Dunlap <[email protected]>
> Cc: Linux PM <[email protected]>
> Acked-by: Randy Dunlap <[email protected]>
> Signed-off-by: Ramkumar Ramachandra <[email protected]>

Queued up for 3.14, thanks!

> ---
> Documentation/cpu-freq/intel-pstate.txt | 40 +++++++++++++++++++++++++++++++++
> 1 file changed, 40 insertions(+)
> create mode 100644 Documentation/cpu-freq/intel-pstate.txt
>
> diff --git a/Documentation/cpu-freq/intel-pstate.txt b/Documentation/cpu-freq/intel-pstate.txt
> new file mode 100644
> index 0000000..e742d21
> --- /dev/null
> +++ b/Documentation/cpu-freq/intel-pstate.txt
> @@ -0,0 +1,40 @@
> +Intel P-state driver
> +--------------------
> +
> +This driver implements a scaling driver with an internal governor for
> +Intel Core processors. The driver follows the same model as the
> +Transmeta scaling driver (longrun.c) and implements the setpolicy()
> +instead of target(). Scaling drivers that implement setpolicy() are
> +assumed to implement internal governors by the cpufreq core. All the
> +logic for selecting the current P state is contained within the
> +driver; no external governor is used by the cpufreq core.
> +
> +Intel SandyBridge+ processors are supported.
> +
> +New sysfs files for controlling P state selection have been added to
> +/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 available performance.
> +
> + min_perf_pct: limits the minimum P state that will be requested by
> + the driver stated as a percentage of the available performance.
> +
> + no_turbo: limits the driver to selecting P states below the turbo
> + frequency range.
> +
> +For contemporary Intel processors, the frequency is controlled by the
> +processor itself and the P-states exposed to software are related to
> +performance levels. The idea that frequency can be set to a single
> +frequency is fiction for Intel Core processors. Even if the scaling
> +driver selects a single P state the actual frequency the processor
> +will run at is selected by the processor itself.
> +
> +New debugfs files have also been added to /sys/kernel/debug/pstate_snb/
> +
> + deadband
> + d_gain_pct
> + i_gain_pct
> + p_gain_pct
> + sample_rate_ms
> + setpoint
>

--
I speak only for myself.
Rafael J. Wysocki, Intel Open Source Technology Center.