[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20211117020724.2647769-1-pcc@google.com>
Date: Tue, 16 Nov 2021 18:07:24 -0800
From: Peter Collingbourne <pcc@...gle.com>
To: Robert Foss <robert.foss@...aro.org>,
Vinod Koul <vkoul@...nel.org>,
John Stultz <john.stultz@...aro.org>,
Anibal Limon <anibal.limon@...aro.org>,
Bjorn Andersson <bjorn.andersson@...aro.org>
Cc: Peter Collingbourne <pcc@...gle.com>,
dri-devel@...ts.freedesktop.org, linux-kernel@...r.kernel.org
Subject: [PATCH] lontium-lt9611: check a different register bit for HDMI sensing
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@...gle.com>
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, ®_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, ®_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
Powered by blists - more mailing lists