Hi Kieran,

Thank you for the patch.

On Wednesday, 20 September 2017 12:16:54 EET Kieran Bingham wrote:
> When used as part of a display pipeline, the VSP is stopped and
> restarted explicitly by the DU from its suspend and resume handlers.
> There is thus no need to stop or restart pipelines in the VSP suspend
> and resume handlers, and doing so would cause the hardware to be
> left in a misconfigured state.
> 
> Ensure that the VSP suspend and resume handlers do not affect DRM
> based pipelines.

s/DRM-base/DRM-based/

> Signed-off-by: Kieran Bingham <kieran.bingham+rene...@ideasonboard.com>
> ---
>  drivers/media/platform/vsp1/vsp1_drv.c | 16 ++++++++++++++--
>  1 file changed, 14 insertions(+), 2 deletions(-)
> 
> diff --git a/drivers/media/platform/vsp1/vsp1_drv.c
> b/drivers/media/platform/vsp1/vsp1_drv.c index 962e4c304076..ed25ba9d551b
> 100644
> --- a/drivers/media/platform/vsp1/vsp1_drv.c
> +++ b/drivers/media/platform/vsp1/vsp1_drv.c
> @@ -571,7 +571,13 @@ static int __maybe_unused vsp1_pm_suspend(struct device
> *dev) {
>       struct vsp1_device *vsp1 = dev_get_drvdata(dev);
> 
> -     vsp1_pipelines_suspend(vsp1);
> +     /*
> +      * When used as part of a display pipeline, the VSP is stopped and
> +      * restarted explicitly by the DU

s/DU/DU./

> +      */
> +     if (!vsp1->drm)
> +             vsp1_pipelines_suspend(vsp1);
> +
>       pm_runtime_force_suspend(vsp1->dev);
> 
>       return 0;
> @@ -582,7 +588,13 @@ static int __maybe_unused vsp1_pm_resume(struct device
> *dev) struct vsp1_device *vsp1 = dev_get_drvdata(dev);
> 
>       pm_runtime_force_resume(vsp1->dev);
> -     vsp1_pipelines_resume(vsp1);
> +
> +     /*
> +      * When used as part of a display pipeline, the VSP is stopped and
> +      * restarted explicitly by the DU

s/DU/DU./

Apart from that,

Reviewed-by: Laurent Pinchart <laurent.pinch...@ideasonboard.com>

> +      */
> +     if (!vsp1->drm)
> +             vsp1_pipelines_resume(vsp1);
> 
>       return 0;
>  }

-- 
Regards,

Laurent Pinchart

Reply via email to