SBC_builder/patch/kernel/sunxi-6.14/patches.megous/drm-bridge-dw-hdmi-Report-HDMI-hotplug-events.patch
2025-06-01 01:05:27 +02:00

42 lines
1.3 KiB
Diff

From d21528bf852f57845123c8d64bbd5dd5eba17e32 Mon Sep 17 00:00:00 2001
From: Ondrej Jirman <megi@xff.cz>
Date: Fri, 1 Sep 2023 00:59:08 +0200
Subject: drm: bridge: dw-hdmi: Report HDMI hotplug events
Signed-off-by: Ondrej Jirman <megi@xff.cz>
---
drivers/gpu/drm/bridge/synopsys/dw-hdmi.c | 10 ++++++++--
1 file changed, 8 insertions(+), 2 deletions(-)
diff --git a/drivers/gpu/drm/bridge/synopsys/dw-hdmi.c b/drivers/gpu/drm/bridge/synopsys/dw-hdmi.c
index 57b2ea9225ca..0f1582318119 100644
--- a/drivers/gpu/drm/bridge/synopsys/dw-hdmi.c
+++ b/drivers/gpu/drm/bridge/synopsys/dw-hdmi.c
@@ -2455,7 +2455,13 @@ static enum drm_connector_status dw_hdmi_detect(struct dw_hdmi *hdmi)
enum drm_connector_status result;
result = hdmi->phy.ops->read_hpd(hdmi, hdmi->phy.data);
- hdmi->last_connector_result = result;
+
+ if (result != hdmi->last_connector_result) {
+ dev_info(hdmi->dev, "read_hpd result: %d", result);
+ handle_plugged_change(hdmi,
+ result == connector_status_connected);
+ hdmi->last_connector_result = result;
+ }
return result;
}
@@ -3138,7 +3144,7 @@ static irqreturn_t dw_hdmi_irq(int irq, void *dev_id)
}
if (status != connector_status_unknown && !hdmi->extcon) {
- dev_dbg(hdmi->dev, "EVENT=%s\n",
+ dev_info(hdmi->dev, "EVENT=%s\n",
status == connector_status_connected ?
"plugin" : "plugout");
--
2.35.3