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