Commit 2fb242ad authored by Ming Lei's avatar Ming Lei Committed by Rafael J. Wysocki

PM / Runtime: Update document about callbacks

Support for device power domains has been introduced in
commit 9659cc06 (PM: Make
system-wide PM and runtime PM treat subsystems consistently),
also power domain callbacks will take precedence over subsystem ones
from commit 4d27e9dc(PM: Make
power domain callbacks take precedence over subsystem ones).

So update part of "Device Runtime PM Callbacks" in
Documentation/power/runtime_pm.txt.
Signed-off-by: default avatarMing Lei <ming.lei@canonical.com>
Signed-off-by: default avatarRafael J. Wysocki <rjw@sisk.pl>
parent 2a5306cc
...@@ -43,13 +43,18 @@ struct dev_pm_ops { ...@@ -43,13 +43,18 @@ struct dev_pm_ops {
... ...
}; };
The ->runtime_suspend(), ->runtime_resume() and ->runtime_idle() callbacks are The ->runtime_suspend(), ->runtime_resume() and ->runtime_idle() callbacks
executed by the PM core for either the device type, or the class (if the device are executed by the PM core for either the power domain, or the device type
type's struct dev_pm_ops object does not exist), or the bus type (if the (if the device power domain's struct dev_pm_ops does not exist), or the class
device type's and class' struct dev_pm_ops objects do not exist) of the given (if the device power domain's and type's struct dev_pm_ops object does not
device (this allows device types to override callbacks provided by bus types or exist), or the bus type (if the device power domain's, type's and class'
classes if necessary). The bus type, device type and class callbacks are struct dev_pm_ops objects do not exist) of the given device, so the priority
referred to as subsystem-level callbacks in what follows. order of callbacks from high to low is that power domain callbacks, device
type callbacks, class callbacks and bus type callbacks, and the high priority
one will take precedence over low priority one. The bus type, device type and
class callbacks are referred to as subsystem-level callbacks in what follows,
and generally speaking, the power domain callbacks are used for representing
power domains within a SoC.
By default, the callbacks are always invoked in process context with interrupts By default, the callbacks are always invoked in process context with interrupts
enabled. However, subsystems can use the pm_runtime_irq_safe() helper function enabled. However, subsystems can use the pm_runtime_irq_safe() helper function
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment