The Intel P-state driver is currently undocumented. Add some documentation based on the cover-letter sent with the original series.
Cc: Dirk Brandewie <dirk.brande...@gmail.com> Cc: Rafael J. Wysocki <r...@rjwysocki.net> Cc: Viresh Kumar <viresh.ku...@linaro.org> Signed-off-by: Ramkumar Ramachandra <artag...@gmail.com> --- I was looking for documentation on my cpufreq driver, intel_pstate, and found nothing: so, here's a small start. Although the original message said SandyBridge only, I noticed that /sys/devices/system/cpu/cpu0/cpufreq/scaling_driver says intel_pstate on my IvyBridge; so I figured subsequent patches introduced support for SandyBridge+. I noticed two "policies" in the code: CPUFREQ_POLICY_PERFORMANCE and CPUFREQ_POLICY_POWERSAVE, but I have no idea how to switch from one to the other. The userspace tool cpupower seems to be too tightly tied to the acpi-cpufreq driver, and I'm not able to find any others. Also, how well is the driver performing? I seem to be getting terrible battery life on my 2013 MBP. 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..fda74ab --- /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 +assmuned 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. + +Only 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 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. + +The units for these for these files are purposely abstract and stated +in terms of available performance and not frequency. In idea that +frequency can be set to a single frequency is a 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 -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/