Message ID | 1411575342-31048-2-git-send-email-vinod.koul@intel.com (mailing list archive) |
---|---|
State | Not Applicable, archived |
Headers | show |
On Wed 2014-09-24 21:44:51, Vinod Koul wrote: > From: Subhransu S. Prusty <subhransu.s.prusty@intel.com> > > 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 With function name as long as the implementation... I'm not sure if this is good helper :-). Pavel > +static inline int pm_runtime_last_busy_and_autosuspend(struct device *dev) > +{ > + pm_runtime_mark_last_busy(dev); > + return pm_runtime_put_autosuspend(dev); > +}
On Wed, Sep 24, 2014 at 07:54:10PM +0200, Pavel Machek wrote: > On Wed 2014-09-24 21:44:51, Vinod Koul wrote: > > From: Subhransu S. Prusty <subhransu.s.prusty@intel.com> > > > > 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 > > With function name as long as the implementation... I'm not sure if > this is good helper :-). am all ears if that is a general consensus to cut down on length and suggestions welcome :)
On 24 September 2014 18:14, Vinod Koul <vinod.koul@intel.com> wrote: > From: Subhransu S. Prusty <subhransu.s.prusty@intel.com> > > 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@intel.com> > Signed-off-by: Vinod Koul <vinod.koul@intel.com> > --- > 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) This doesn't help code readability I think. The function name is quite long as Pavel also pointed out. :-) And, I also lack the "put" prefix, following the other functions in the runtime PM API - which would make the name even longer. :-) Kind regards Uffe -- To unsubscribe from this list: send the line "unsubscribe linux-pm" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
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