linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v4 3/3] PM: runtime: Clarify documentation when callbacks are unassigned
@ 2021-06-09 10:06 Ulf Hansson
  2021-06-09 14:16 ` Alan Stern
  0 siblings, 1 reply; 3+ messages in thread
From: Ulf Hansson @ 2021-06-09 10:06 UTC (permalink / raw)
  To: Rafael J . Wysocki, linux-pm
  Cc: Ulf Hansson, Saravana Kannan, Alan Stern, Adrian Hunter,
	Tony Lindgren, Kevin Hilman, Geert Uytterhoeven,
	linux-arm-kernel, linux-kernel

Recent changes to the PM core allows ->runtime_suspend|resume callbacks to
be unassigned.

In the earlier behaviour the PM core would return -ENOSYS, when trying to
runtime resume a device, for example. Let's update the documentation to
clarify this.

Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
---

Changes in v4:
        - This time, really, fix spelling and further clarified the behaviour,
	according to comments from Alan.

---
 Documentation/power/runtime_pm.rst | 9 +++++++++
 1 file changed, 9 insertions(+)

diff --git a/Documentation/power/runtime_pm.rst b/Documentation/power/runtime_pm.rst
index 18ae21bf7f92..8a0a43811e3a 100644
--- a/Documentation/power/runtime_pm.rst
+++ b/Documentation/power/runtime_pm.rst
@@ -827,6 +827,15 @@ or driver about runtime power changes.  Instead, the driver for the device's
 parent must take responsibility for telling the device's driver when the
 parent's power state changes.
 
+Note that, in some cases it may not be desirable for subsystems/drivers to call
+pm_runtime_no_callbacks() for their devices. This could be because a subset of
+the runtime PM callbacks needs to be implemented, a platform dependent PM
+domain could get attached to the device or that the device is power managed
+through a supplier device link. For these reasons and to avoid boilerplate code
+in subsystems/drivers, the PM core allows runtime PM callbacks to be
+unassigned. More precisely, if a callback pointer is NULL, the PM core will act
+as though there was a callback and it returned 0.
+
 9. Autosuspend, or automatically-delayed suspends
 =================================================
 
-- 
2.25.1


^ permalink raw reply related	[flat|nested] 3+ messages in thread

* Re: [PATCH v4 3/3] PM: runtime: Clarify documentation when callbacks are unassigned
  2021-06-09 10:06 [PATCH v4 3/3] PM: runtime: Clarify documentation when callbacks are unassigned Ulf Hansson
@ 2021-06-09 14:16 ` Alan Stern
  2021-06-11 17:05   ` Rafael J. Wysocki
  0 siblings, 1 reply; 3+ messages in thread
From: Alan Stern @ 2021-06-09 14:16 UTC (permalink / raw)
  To: Ulf Hansson
  Cc: Rafael J . Wysocki, linux-pm, Saravana Kannan, Adrian Hunter,
	Tony Lindgren, Kevin Hilman, Geert Uytterhoeven,
	linux-arm-kernel, linux-kernel

On Wed, Jun 09, 2021 at 12:06:10PM +0200, Ulf Hansson wrote:
> Recent changes to the PM core allows ->runtime_suspend|resume callbacks to
> be unassigned.
> 
> In the earlier behaviour the PM core would return -ENOSYS, when trying to
> runtime resume a device, for example. Let's update the documentation to
> clarify this.
> 
> Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
> ---
> 
> Changes in v4:
>         - This time, really, fix spelling and further clarified the behaviour,
> 	according to comments from Alan.
> 
> ---
>  Documentation/power/runtime_pm.rst | 9 +++++++++
>  1 file changed, 9 insertions(+)
> 
> diff --git a/Documentation/power/runtime_pm.rst b/Documentation/power/runtime_pm.rst
> index 18ae21bf7f92..8a0a43811e3a 100644
> --- a/Documentation/power/runtime_pm.rst
> +++ b/Documentation/power/runtime_pm.rst
> @@ -827,6 +827,15 @@ or driver about runtime power changes.  Instead, the driver for the device's
>  parent must take responsibility for telling the device's driver when the
>  parent's power state changes.
>  
> +Note that, in some cases it may not be desirable for subsystems/drivers to call
> +pm_runtime_no_callbacks() for their devices. This could be because a subset of
> +the runtime PM callbacks needs to be implemented, a platform dependent PM
> +domain could get attached to the device or that the device is power managed
> +through a supplier device link. For these reasons and to avoid boilerplate code
> +in subsystems/drivers, the PM core allows runtime PM callbacks to be
> +unassigned. More precisely, if a callback pointer is NULL, the PM core will act
> +as though there was a callback and it returned 0.
> +
>  9. Autosuspend, or automatically-delayed suspends
>  =================================================

Acked-by: Alan Stern <stern@rowland.harvard.edu>

I don't know what happened before.  Maybe the terminal window got 
resized without me noticing, so the lines looked too long when they 
actually weren't.

Alan Stern

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [PATCH v4 3/3] PM: runtime: Clarify documentation when callbacks are unassigned
  2021-06-09 14:16 ` Alan Stern
@ 2021-06-11 17:05   ` Rafael J. Wysocki
  0 siblings, 0 replies; 3+ messages in thread
From: Rafael J. Wysocki @ 2021-06-11 17:05 UTC (permalink / raw)
  To: Alan Stern, Ulf Hansson
  Cc: Rafael J . Wysocki, Linux PM, Saravana Kannan, Adrian Hunter,
	Tony Lindgren, Kevin Hilman, Geert Uytterhoeven, Linux ARM,
	Linux Kernel Mailing List

On Wed, Jun 9, 2021 at 4:16 PM Alan Stern <stern@rowland.harvard.edu> wrote:
>
> On Wed, Jun 09, 2021 at 12:06:10PM +0200, Ulf Hansson wrote:
> > Recent changes to the PM core allows ->runtime_suspend|resume callbacks to
> > be unassigned.
> >
> > In the earlier behaviour the PM core would return -ENOSYS, when trying to
> > runtime resume a device, for example. Let's update the documentation to
> > clarify this.
> >
> > Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
> > ---
> >
> > Changes in v4:
> >         - This time, really, fix spelling and further clarified the behaviour,
> >       according to comments from Alan.
> >
> > ---
> >  Documentation/power/runtime_pm.rst | 9 +++++++++
> >  1 file changed, 9 insertions(+)
> >
> > diff --git a/Documentation/power/runtime_pm.rst b/Documentation/power/runtime_pm.rst
> > index 18ae21bf7f92..8a0a43811e3a 100644
> > --- a/Documentation/power/runtime_pm.rst
> > +++ b/Documentation/power/runtime_pm.rst
> > @@ -827,6 +827,15 @@ or driver about runtime power changes.  Instead, the driver for the device's
> >  parent must take responsibility for telling the device's driver when the
> >  parent's power state changes.
> >
> > +Note that, in some cases it may not be desirable for subsystems/drivers to call
> > +pm_runtime_no_callbacks() for their devices. This could be because a subset of
> > +the runtime PM callbacks needs to be implemented, a platform dependent PM
> > +domain could get attached to the device or that the device is power managed
> > +through a supplier device link. For these reasons and to avoid boilerplate code
> > +in subsystems/drivers, the PM core allows runtime PM callbacks to be
> > +unassigned. More precisely, if a callback pointer is NULL, the PM core will act
> > +as though there was a callback and it returned 0.
> > +
> >  9. Autosuspend, or automatically-delayed suspends
> >  =================================================
>
> Acked-by: Alan Stern <stern@rowland.harvard.edu>

Applied as 5.14 material along with the [1-2/3] from this series.

Thanks!

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2021-06-11 17:06 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-06-09 10:06 [PATCH v4 3/3] PM: runtime: Clarify documentation when callbacks are unassigned Ulf Hansson
2021-06-09 14:16 ` Alan Stern
2021-06-11 17:05   ` Rafael J. Wysocki

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).