mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: Ramkumar Ramachandra <artagnon@gmail.com>
To: LKML <linux-kernel@vger.kernel.org>
Cc: Dirk Brandewie <dirk.brandewie@gmail.com>,
	"Rafael J. Wysocki" <rjw@rjwysocki.net>,
	Viresh Kumar <viresh.kumar@linaro.org>
Subject: [PATCH] Documentation/cpu-freq: add intel-pstate.txt
Date: Fri,  3 Jan 2014 17:01:13 +0530	[thread overview]
Message-ID: <1388748673-11032-1-git-send-email-artagnon@gmail.com> (raw)

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.brandewie@gmail.com>
Cc: Rafael J. Wysocki <rjw@rjwysocki.net>
Cc: Viresh Kumar <viresh.kumar@linaro.org>
Signed-off-by: Ramkumar Ramachandra <artagnon@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


             reply	other threads:[~2014-01-03 11:31 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-01-03 11:31 Ramkumar Ramachandra [this message]
2014-01-03 12:09 ` Rafael J. Wysocki
2014-01-03 17:46   ` Dirk Brandewie
2014-01-03 17:29 ` Randy Dunlap

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1388748673-11032-1-git-send-email-artagnon@gmail.com \
    --to=artagnon@gmail.com \
    --cc=dirk.brandewie@gmail.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=rjw@rjwysocki.net \
    --cc=viresh.kumar@linaro.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

Powered by JetHome