[PATCH 01/27] PM: Add helper pm_runtime_last_busy_and_autosuspend()

From: Vinod Koul
Date: Wed Sep 24 2014 - 12:57:28 EST


From: Subhransu S. Prusty <subhransu.s.prusty@xxxxxxxxx>

pm_runtime_mark_last_busy and pm_runtime_put_autosuspend are used together
in quite a lot of places. Add a helper for these.
Also updated Documentation for this

Signed-off-by: Subhransu S. Prusty <subhransu.s.prusty@xxxxxxxxx>
Signed-off-by: Vinod Koul <vinod.koul@xxxxxxxxx>
---
Documentation/power/runtime_pm.txt | 4 ++++
include/linux/pm_runtime.h | 6 ++++++
2 files changed, 10 insertions(+), 0 deletions(-)

diff --git a/Documentation/power/runtime_pm.txt b/Documentation/power/runtime_pm.txt
index f32ce54..5d9565b 100644
--- a/Documentation/power/runtime_pm.txt
+++ b/Documentation/power/runtime_pm.txt
@@ -490,6 +490,10 @@ drivers/base/power/runtime.c and include/linux/pm_runtime.h:
power.use_autosuspend isn't set, otherwise returns the expiration time
in jiffies

+ int pm_runtime_last_busy_and_autosuspend(struct device *dev);
+ - invoke pm_runtime_mark_last_busy(dev) and then run
+ pm_runtime_put_autosuspend(dev) and return its result
+
It is safe to execute the following helper functions from interrupt context:

pm_request_idle()
diff --git a/include/linux/pm_runtime.h b/include/linux/pm_runtime.h
index 367f49b..256ec50 100644
--- a/include/linux/pm_runtime.h
+++ b/include/linux/pm_runtime.h
@@ -277,4 +277,10 @@ static inline void pm_runtime_dont_use_autosuspend(struct device *dev)
__pm_runtime_use_autosuspend(dev, false);
}

+static inline int pm_runtime_last_busy_and_autosuspend(struct device *dev)
+{
+ pm_runtime_mark_last_busy(dev);
+ return pm_runtime_put_autosuspend(dev);
+}
+
#endif
--
1.7.0.4

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/