提交 43d51af4 编写于 作者: A Alan Stern 提交者: Rafael J. Wysocki

PM / Runtime: Update .runtime_idle() callback documentation

Runtime PM documentation needs to be updated after the previous
change of the rpm_idle() behavior, so modify it as appropriate.

[rjw: Subject and changelog]
Signed-off-by: NAlan Stern <stern@rowland.harvard.edu>
Signed-off-by: NRafael J. Wysocki <rafael.j.wysocki@intel.com>
上级 45f0a85c
...@@ -144,8 +144,12 @@ The action performed by the idle callback is totally dependent on the subsystem ...@@ -144,8 +144,12 @@ The action performed by the idle callback is totally dependent on the subsystem
(or driver) in question, but the expected and recommended action is to check (or driver) in question, but the expected and recommended action is to check
if the device can be suspended (i.e. if all of the conditions necessary for if the device can be suspended (i.e. if all of the conditions necessary for
suspending the device are satisfied) and to queue up a suspend request for the suspending the device are satisfied) and to queue up a suspend request for the
device in that case. The value returned by this callback is ignored by the PM device in that case. If there is no idle callback, or if the callback returns
core. 0, then the PM core will attempt to carry out a runtime suspend of the device;
in essence, it will call pm_runtime_suspend() directly. To prevent this (for
example, if the callback routine has started a delayed suspend), the routine
should return a non-zero value. Negative error return codes are ignored by the
PM core.
The helper functions provided by the PM core, described in Section 4, guarantee The helper functions provided by the PM core, described in Section 4, guarantee
that the following constraints are met with respect to runtime PM callbacks for that the following constraints are met with respect to runtime PM callbacks for
...@@ -301,9 +305,10 @@ drivers/base/power/runtime.c and include/linux/pm_runtime.h: ...@@ -301,9 +305,10 @@ drivers/base/power/runtime.c and include/linux/pm_runtime.h:
removing the device from device hierarchy removing the device from device hierarchy
int pm_runtime_idle(struct device *dev); int pm_runtime_idle(struct device *dev);
- execute the subsystem-level idle callback for the device; returns 0 on - execute the subsystem-level idle callback for the device; returns an
success or error code on failure, where -EINPROGRESS means that error code on failure, where -EINPROGRESS means that ->runtime_idle() is
->runtime_idle() is already being executed already being executed; if there is no callback or the callback returns 0
then run pm_runtime_suspend(dev) and return its result
int pm_runtime_suspend(struct device *dev); int pm_runtime_suspend(struct device *dev);
- execute the subsystem-level suspend callback for the device; returns 0 on - execute the subsystem-level suspend callback for the device; returns 0 on
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册