[PATCH v4 3/3] PM: runtime: Clarify documentation when callbacks are unassigned

Alan Stern stern at rowland.harvard.edu
Wed Jun 9 07:16:23 PDT 2021


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 at 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 at 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



More information about the linux-arm-kernel mailing list