[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <CAD=FV=UUGnjb0_c3fwND-E8T5obvQAwu4ws0Q2Mm_gk3=wbvyA@mail.gmail.com>
Date: Fri, 21 Oct 2022 08:09:14 -0700
From: Doug Anderson <dianders@...omium.org>
To: Stephen Boyd <swboyd@...omium.org>
Cc: dri-devel@...ts.freedesktop.org,
Rock Chiu <rock.chiu@...adetech.corp-partner.google.com>,
Hsin-Yi Wang <hsinyi@...omium.org>,
Jason Yen <jason.yen@...adetech.corp-partner.google.com>,
Chen-Yu Tsai <wenst@...omium.org>,
Andrzej Hajda <andrzej.hajda@...el.com>,
Daniel Vetter <daniel@...ll.ch>,
David Airlie <airlied@...ux.ie>,
Jernej Skrabec <jernej.skrabec@...il.com>,
Jonas Karlman <jonas@...boo.se>,
Laurent Pinchart <Laurent.pinchart@...asonboard.com>,
Neil Armstrong <narmstrong@...libre.com>,
Philip Chen <philipchen@...omium.org>,
Robert Foss <robert.foss@...aro.org>,
linux-kernel@...r.kernel.org
Subject: Re: [PATCH] drm/bridge: ps8640: Add back the 50 ms mystery delay
after HPD
Hi,
On Wed, Oct 19, 2022 at 11:22 AM Doug Anderson <dianders@...omium.org> wrote:
>
> Hi,
>
> On Wed, Oct 19, 2022 at 11:18 AM Stephen Boyd <swboyd@...omium.org> wrote:
> >
> > Quoting Douglas Anderson (2022-10-17 12:18:51)
> > > Back in commit 826cff3f7ebb ("drm/bridge: parade-ps8640: Enable
> > > runtime power management") we removed a mysterious 50 ms delay because
> > > "Parade's support [couldn't] explain what the delay [was] for".
> > >
> > > While I'm always a fan of removing mysterious delays, I suspect that
> > > we need this mysterious delay to avoid some problems.
> > >
> > > Specifically, what I found recently is that on sc7180-trogdor-homestar
> > > sometimes the AUX backlight wasn't initializing properly. Some
> > > debugging showed that the drm_dp_dpcd_read() function that the AUX
> > > backlight driver was calling was returning bogus data about 1% of the
> > > time when I booted up. This confused
> > > drm_panel_dp_aux_backlight(). From continued debugging:
> > > - If I retried the read then the read worked just fine.
> > > - If I added a loop to perform the same read that
> > > drm_panel_dp_aux_backlight() was doing 30 times at bootup I could
> > > see that some percentage of the time the first read would give bogus
> > > data but all 29 additional reads would always be fine.
> > > - If I added a large delay _after_ powering on the panel but before
> > > powering on PS8640 I could still reproduce the problem.
> > > - If I added a delay after PS8640 powered on then I couldn't reproduce
> > > the problem.
> > > - I couldn't reproduce the problem on a board with the same panel but
> > > the ti-sn65dsi86 bridge chip.
> > >
> > > To me, the above indicated that there was a problem with PS8640 and
> > > not the panel.
> > >
> > > I don't really have any insight into what's going on in the MCU, but
> > > my best guess is that when the MCU itself sees the HPD go high that it
> > > does some AUX transfers itself and this is confusing things.
> > >
> > > Let's go back and add back in the mysterious 50 ms delay. We only want
> > > to do this the first time we see HPD go high after booting the MCU,
> > > not every time we double-check HPD.
> > >
> > > With this, the backlight initializes reliably on homestar.
> > >
> > > Fixes: 826cff3f7ebb ("drm/bridge: parade-ps8640: Enable runtime power management")
> > > Signed-off-by: Douglas Anderson <dianders@...omium.org>
> > > ---
> >
> > Reviewed-by: Stephen Boyd <swboyd@...omium.org>
>
> I'm not expecting any other reviews of this patch, though I'm happy to
> be proven wrong. As a heads up, I'll plan to land this on Friday
> (roughly 2 days from now) in "drm-misc-fixes" barring anything else.
> If anyone else plans to offer any opinions about this patch or just
> wants more time to review, please shout.
As promised, pushed to drm-misc-fixes:
cb8e30ddb7e3 drm/bridge: ps8640: Add back the 50 ms mystery delay after HPD
Powered by blists - more mailing lists