Re: [PATCH] lontium-lt9611: check a different register bit for HDMI sensing

From: Vinod Koul
Date: Wed Nov 17 2021 - 00:09:10 EST


On 16-11-21, 22:49, Anibal Limon wrote:
> Dmitry,
>
> May be this is the reason of my HP monitor not working in RB5.

Rb5 has Lt9611UXC


>
> Regards,
> Anibal
>
> El mar., 16 de noviembre de 2021 20:07, Peter Collingbourne <pcc@xxxxxxxxxx>
> escribió:
>
> > It has been observed that with certain monitors such as the HP Z27n,
> > the register 0x825e reads a value of 0x79 when the HDMI cable is
> > connected and 0x78 when it is disconnected, i.e. bit 0 appears
> > to correspond to the HDMI connection status and bit 2 is never
> > set. Therefore, change the driver to check bit 0 instead of bit 2.
> >
> > Signed-off-by: Peter Collingbourne <pcc@xxxxxxxxxx>
> > Link:
> > https://linux-review.googlesource.com/id/I7e76411127e1ce4988a3f6d0c8ba5f1c3d880c23
> > ---
> > N.B. I don't currently have easy access to a monitor that works
> > with the existing driver, so it would be great if people with
> > monitors that currently work could test this patch to make sure
> > that it doesn't introduce any regressions. Otherwise I will change
> > it to check both bits.
> >
> > drivers/gpu/drm/bridge/lontium-lt9611.c | 4 ++--
> > 1 file changed, 2 insertions(+), 2 deletions(-)
> >
> > diff --git a/drivers/gpu/drm/bridge/lontium-lt9611.c
> > b/drivers/gpu/drm/bridge/lontium-lt9611.c
> > index 29b1ce2140ab..71f1db802916 100644
> > --- a/drivers/gpu/drm/bridge/lontium-lt9611.c
> > +++ b/drivers/gpu/drm/bridge/lontium-lt9611.c
> > @@ -586,7 +586,7 @@ lt9611_connector_detect(struct drm_connector
> > *connector, bool force)
> > int connected = 0;
> >
> > regmap_read(lt9611->regmap, 0x825e, &reg_val);
> > - connected = (reg_val & BIT(2));
> > + connected = (reg_val & BIT(0));
> >
> > lt9611->status = connected ? connector_status_connected :
> > connector_status_disconnected;
> > @@ -926,7 +926,7 @@ static enum drm_connector_status
> > lt9611_bridge_detect(struct drm_bridge *bridge)
> > int connected;
> >
> > regmap_read(lt9611->regmap, 0x825e, &reg_val);
> > - connected = reg_val & BIT(2);
> > + connected = reg_val & BIT(0);
> >
> > lt9611->status = connected ? connector_status_connected :
> > connector_status_disconnected;
> > --
> > 2.34.0.rc1.387.gb447b232ab-goog
> >
> >

--
~Vinod