[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <20190805151103.GY104440@art_vandelay>
Date: Mon, 5 Aug 2019 11:11:03 -0400
From: Sean Paul <sean@...rly.run>
To: Douglas Anderson <dianders@...omium.org>
Cc: Heiko Stuebner <heiko@...ech.de>,
Tomeu Vizoso <tomeu.vizoso@...labora.com>,
seanpaul@...omium.org, linux-rockchip@...ts.infradead.org,
mka@...omium.org, Sandy Huang <hjc@...k-chips.com>,
linux-kernel@...r.kernel.org, dri-devel@...ts.freedesktop.org,
David Airlie <airlied@...ux.ie>,
linux-arm-kernel@...ts.infradead.org,
Daniel Vetter <daniel@...ll.ch>
Subject: Re: [PATCH] drm/rockchip: Suspend DP late
On Fri, Aug 02, 2019 at 03:26:29PM -0400, Sean Paul wrote:
> On Fri, Aug 02, 2019 at 11:46:16AM -0700, Douglas Anderson wrote:
> > In commit fe64ba5c6323 ("drm/rockchip: Resume DP early") we moved
> > resume to be early but left suspend at its normal time. This seems
> > like it could be OK, but casues problems if a suspend gets interrupted
> > partway through. The OS only balances matching suspend/resume levels.
> > ...so if suspend was called then resume will be called. If suspend
> > late was called then resume early will be called. ...but if suspend
> > was called resume early might not get called. This leads to an
> > unbalance in the clock enables / disables.
> >
> > Lets take the simple fix and just move suspend to be late to match.
> > This makes the PM core take proper care in keeping things balanced.
> >
> > Fixes: fe64ba5c6323 ("drm/rockchip: Resume DP early")
> > Signed-off-by: Douglas Anderson <dianders@...omium.org>
>
> Reviewed-by: Sean Paul <sean@...rly.run>
>
> This should go in -misc-fixes and due to some... administrative reasons... I
> will leave it on the list until Maarten has a chance to ff to -rc4 on Monday.
> I'll apply it then so as to not require a backmerge.
We're no longer able to ff drm-misc-fixes since a commit came in on Saturday, so
I've piled this on as well.
Thanks,
Sean
>
> Sean
>
> > ---
> >
> > drivers/gpu/drm/rockchip/analogix_dp-rockchip.c | 2 +-
> > 1 file changed, 1 insertion(+), 1 deletion(-)
> >
> > diff --git a/drivers/gpu/drm/rockchip/analogix_dp-rockchip.c b/drivers/gpu/drm/rockchip/analogix_dp-rockchip.c
> > index 7d7cb57410fc..f38f5e113c6b 100644
> > --- a/drivers/gpu/drm/rockchip/analogix_dp-rockchip.c
> > +++ b/drivers/gpu/drm/rockchip/analogix_dp-rockchip.c
> > @@ -436,7 +436,7 @@ static int rockchip_dp_resume(struct device *dev)
> >
> > static const struct dev_pm_ops rockchip_dp_pm_ops = {
> > #ifdef CONFIG_PM_SLEEP
> > - .suspend = rockchip_dp_suspend,
> > + .suspend_late = rockchip_dp_suspend,
> > .resume_early = rockchip_dp_resume,
> > #endif
> > };
> > --
> > 2.22.0.770.g0f2c4a37fd-goog
> >
>
> --
> Sean Paul, Software Engineer, Google / Chromium OS
--
Sean Paul, Software Engineer, Google / Chromium OS
Powered by blists - more mailing lists