diff options
author | Ben Dooks <ben.dooks@codethink.co.uk> | 2015-04-17 01:14:15 +0100 |
---|---|---|
committer | Rafael J. Wysocki <rafael.j.wysocki@intel.com> | 2015-05-13 00:02:38 +0200 |
commit | f6a2fbb903d51b1e328d6e358048426ca97932ad (patch) | |
tree | 3fe02ae423308b025600a64db5fd764ce2f24705 /Documentation/power | |
parent | 030bbdbf4c833bc69f502eae58498bc5572db736 (diff) | |
download | linux-f6a2fbb903d51b1e328d6e358048426ca97932ad.tar.gz linux-f6a2fbb903d51b1e328d6e358048426ca97932ad.tar.bz2 linux-f6a2fbb903d51b1e328d6e358048426ca97932ad.zip |
PM / runtime: add note about re-calling in during device probe()
The sh_eth driver has come up with an issue where the runtime_pm
code suspends it during the probe() method due to the network
device registration re-calling into the driver.
Add a note about this into the documentation.
Signed-off-by: Ben Dooks <ben.dooks@codethink.co.uk>
Signed-off-by: Ben Hutchings <ben.hutchings@codethink.co.uk>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Diffstat (limited to 'Documentation/power')
-rw-r--r-- | Documentation/power/runtime_pm.txt | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/Documentation/power/runtime_pm.txt b/Documentation/power/runtime_pm.txt index 44fe1d28a163..e76dc0ad4d2b 100644 --- a/Documentation/power/runtime_pm.txt +++ b/Documentation/power/runtime_pm.txt @@ -556,6 +556,12 @@ helper functions described in Section 4. In that case, pm_runtime_resume() should be used. Of course, for this purpose the device's runtime PM has to be enabled earlier by calling pm_runtime_enable(). +Note, if the device may execute pm_runtime calls during the probe (such as +if it is registers with a subsystem that may call back in) then the +pm_runtime_get_sync() call paired with a pm_runtime_put() call will be +appropriate to ensure that the device is not put back to sleep during the +probe. This can happen with systems such as the network device layer. + It may be desirable to suspend the device once ->probe() has finished. Therefore the driver core uses the asyncronous pm_request_idle() to submit a request to execute the subsystem-level idle callback for the device at that |