[PATCH v2] drm/edid: fixed the bug that hdr metadata was not cleared
Feijuan Li
feijuan.li at samsung.com
Tue May 13 01:11:45 UTC 2025
Dear maintainer:
I have changed the patch as your suggestion.
v1->v2:make a new function for hdr info reset.
From: "feijuan.li" <feijuan.li at samsung.com>
Date: Fri, 18 Apr 2025 14:56:49 +0000
Subject: [PATCH v2] drm/edid: fixed the bug that hdr metadata was not reset
When DP connected to a device with HDR capability,
the hdr structure was filled.Then connected to another
sink device without hdr capability, but the hdr info
still exist.
Signed-off-by: feijuan.li <feijuan.li at samsung.com>
---
drivers/gpu/drm/drm_edid.c 6 ++++++
1 file changed, 6 insertions(+)
diff --git a/drivers/gpu/drm/drm_edid.c b/drivers/gpu/drm/drm_edid.c
index 13bc4c290b17..cd0e4148f6b0 100644
--- a/drivers/gpu/drm/drm_edid.c
+++ b/drivers/gpu/drm/drm_edid.c
@@ -6576,6 +6576,11 @@ static void drm_update_mso(struct drm_connector *connector,
displayid_iter_end(&iter);
}
+static void drm_reset_hdr_sink_metadata(struct drm_connector *connector)
+{
+ memset(&connector->hdr_sink_metadata, 0, sizeof(connector->hdr_sink_metadata));
+}
+
/* A connector has no EDID information, so we've got no EDID to compute quirks from. Reset
* all of the values which would have been set from EDID
*/
@@ -6651,6 +6656,7 @@ static void update_display_info(struct drm_connector *connector,
struct drm_display_info *info = &connector->display_info;
const struct edid *edid;
+ drm_reset_hdr_sink_metadata(connector);
drm_reset_display_info(connector);
clear_eld(connector);
--
2.25.1
More information about the dri-devel
mailing list