summaryrefslogtreecommitdiffstats
path: root/Documentation/power
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2017-03-02 20:33:52 -0500
committerLinus Torvalds <torvalds@linux-foundation.org>2017-03-02 20:33:52 -0500
commit080e4168c0834ccc853c48259e16a5c556c7ecba (patch)
tree641a264718c6f1b8bf9525e4e4a073565044cd03 /Documentation/power
parentbbe08c0a43e2c5ee3a00de68c0e867a08a9aa990 (diff)
parent9b5e9cb164ee93ae19c4c6593e8188a55481f78b (diff)
Merge tag 'pm-extra-4.11-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm
Pull more power management updates deom Rafael Wysocki: "These fix two bugs introduced by recent power management updates (in the cpuidle menu governor and intel_pstate) and a few other issues, clean up things and remove unused code. Specifics: - Fix for a cpuidle menu governor problem that started to take an unnecessary spinlock after one of the recent updates and that did not play well with the RT patch (Rafael Wysocki). - Fix for the new intel_pstate operation mode switching feature added recently that did not reinitialize P-state limits properly when switching operation modes (Rafael Wysocki). - Removal of unused global notifiers from the PM QoS framework (Viresh Kumar). - Generic power domains framework update to make it handle asynchronous invocations of PM callbacks in the "noirq" phases of system suspend/hibernation correctly (Ulf Hansson). - Two hibernation core cleanups (Rafael Wysocki). - intel_idle cleanup related to the sysfs interface (Len Brown). - Off-by-one bug fix in the OPP (Operating Performance Points) framework (Andrzej Hajda). - OPP framework's documentation fix (Viresh Kumar). - cpufreq qoriq driver cleanup (Tang Yuantian). - Fixes for typos in comments in the device runtime PM framework (Christophe Jaillet)" * tag 'pm-extra-4.11-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm: PM / OPP: Documentation: Fix opp-microvolt in examples intel_idle: stop exposing platform acronyms in sysfs cpufreq: intel_pstate: Fix limits issue with operation mode switching PM / hibernate: Define pr_fmt() and use pr_*() instead of printk() PM / hibernate: Untangle power_down() cpuidle: menu: Avoid taking spinlock for accessing QoS values PM / QoS: Remove global notifiers PM / runtime: Fix some typos cpufreq: qoriq: clean up unused code PM / OPP: fix off-by-one bug in dev_pm_opp_get_max_volt_latency loop PM / Domains: Power off masters immediately in the power off sequence PM / Domains: Rename is_async to one_dev_on for genpd_power_off() PM / Domains: Move genpd_power_off() above genpd_power_on()
Diffstat (limited to 'Documentation/power')
-rw-r--r--Documentation/power/pm_qos_interface.txt13
-rw-r--r--Documentation/power/runtime_pm.txt6
2 files changed, 4 insertions, 15 deletions
diff --git a/Documentation/power/pm_qos_interface.txt b/Documentation/power/pm_qos_interface.txt
index 129f7c0e1483..21d2d48f87a2 100644
--- a/Documentation/power/pm_qos_interface.txt
+++ b/Documentation/power/pm_qos_interface.txt
@@ -163,8 +163,7 @@ of flags and remove sysfs attributes pm_qos_no_power_off and pm_qos_remote_wakeu
163under the device's power directory. 163under the device's power directory.
164 164
165Notification mechanisms: 165Notification mechanisms:
166The per-device PM QoS framework has 2 different and distinct notification trees: 166The per-device PM QoS framework has a per-device notification tree.
167a per-device notification tree and a global notification tree.
168 167
169int dev_pm_qos_add_notifier(device, notifier): 168int dev_pm_qos_add_notifier(device, notifier):
170Adds a notification callback function for the device. 169Adds a notification callback function for the device.
@@ -174,16 +173,6 @@ is changed (for resume latency device PM QoS only).
174int dev_pm_qos_remove_notifier(device, notifier): 173int dev_pm_qos_remove_notifier(device, notifier):
175Removes the notification callback function for the device. 174Removes the notification callback function for the device.
176 175
177int dev_pm_qos_add_global_notifier(notifier):
178Adds a notification callback function in the global notification tree of the
179framework.
180The callback is called when the aggregated value for any device is changed
181(for resume latency device PM QoS only).
182
183int dev_pm_qos_remove_global_notifier(notifier):
184Removes the notification callback function from the global notification tree
185of the framework.
186
187 176
188Active state latency tolerance 177Active state latency tolerance
189 178
diff --git a/Documentation/power/runtime_pm.txt b/Documentation/power/runtime_pm.txt
index 4870980e967e..64546eb9a16a 100644
--- a/Documentation/power/runtime_pm.txt
+++ b/Documentation/power/runtime_pm.txt
@@ -100,7 +100,7 @@ knows what to do to handle the device).
100 * If the suspend callback returns an error code different from -EBUSY and 100 * If the suspend callback returns an error code different from -EBUSY and
101 -EAGAIN, the PM core regards this as a fatal error and will refuse to run 101 -EAGAIN, the PM core regards this as a fatal error and will refuse to run
102 the helper functions described in Section 4 for the device until its status 102 the helper functions described in Section 4 for the device until its status
103 is directly set to either'active', or 'suspended' (the PM core provides 103 is directly set to either 'active', or 'suspended' (the PM core provides
104 special helper functions for this purpose). 104 special helper functions for this purpose).
105 105
106In particular, if the driver requires remote wakeup capability (i.e. hardware 106In particular, if the driver requires remote wakeup capability (i.e. hardware
@@ -217,7 +217,7 @@ defined in include/linux/pm.h:
217 one to complete 217 one to complete
218 218
219 spinlock_t lock; 219 spinlock_t lock;
220 - lock used for synchronisation 220 - lock used for synchronization
221 221
222 atomic_t usage_count; 222 atomic_t usage_count;
223 - the usage counter of the device 223 - the usage counter of the device
@@ -565,7 +565,7 @@ appropriate to ensure that the device is not put back to sleep during the
565probe. This can happen with systems such as the network device layer. 565probe. This can happen with systems such as the network device layer.
566 566
567It may be desirable to suspend the device once ->probe() has finished. 567It may be desirable to suspend the device once ->probe() has finished.
568Therefore the driver core uses the asyncronous pm_request_idle() to submit a 568Therefore the driver core uses the asynchronous pm_request_idle() to submit a
569request to execute the subsystem-level idle callback for the device at that 569request to execute the subsystem-level idle callback for the device at that
570time. A driver that makes use of the runtime autosuspend feature, may want to 570time. A driver that makes use of the runtime autosuspend feature, may want to
571update the last busy mark before returning from ->probe(). 571update the last busy mark before returning from ->probe().