Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 4ec6a9cc authored by Rafael J. Wysocki's avatar Rafael J. Wysocki
Browse files

PM / runtime: Update documentation to reflect the current code flow



The runtime PM documentation in runtime_pm.txt has not been updated
after some changes to the system suspend and resume core code, so
update it to reflect the current code flow.

Signed-off-by: default avatarRafael J. Wysocki <rafael.j.wysocki@intel.com>
Acked-by: default avatarAlan Stern <stern@rowland.harvard.edu>
parent d6d211db
Loading
Loading
Loading
Loading
+11 −9
Original line number Diff line number Diff line
@@ -648,15 +648,17 @@ The PM core does its best to reduce the probability of race conditions between
the runtime PM and system suspend/resume (and hibernation) callbacks by carrying
out the following operations:

  * During system suspend it calls pm_runtime_get_noresume() and
    pm_runtime_barrier() for every device right before executing the
    subsystem-level .suspend() callback for it.  In addition to that it calls
    __pm_runtime_disable() with 'false' as the second argument for every device
    right before executing the subsystem-level .suspend_late() callback for it.

  * During system resume it calls pm_runtime_enable() and pm_runtime_put()
    for every device right after executing the subsystem-level .resume_early()
    callback and right after executing the subsystem-level .resume() callback
  * During system suspend pm_runtime_get_noresume() is called for every device
    right before executing the subsystem-level .prepare() callback for it and
    pm_runtime_barrier() is called for every device right before executing the
    subsystem-level .suspend() callback for it.  In addition to that the PM core
    calls  __pm_runtime_disable() with 'false' as the second argument for every
    device right before executing the subsystem-level .suspend_late() callback
    for it.

  * During system resume pm_runtime_enable() and pm_runtime_put() are called for
    every device right after executing the subsystem-level .resume_early()
    callback and right after executing the subsystem-level .complete() callback
    for it, respectively.

7. Generic subsystem callbacks