drivers/gpu/drm/drm_edid.c | 1 + 1 file changed, 1 insertion(+)
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@samsung.com>
---
drivers/gpu/drm/drm_edid.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/drivers/gpu/drm/drm_edid.c b/drivers/gpu/drm/drm_edid.c
index 13bc4c290b17..9edb3247c767 100644
--- a/drivers/gpu/drm/drm_edid.c
+++ b/drivers/gpu/drm/drm_edid.c
@@ -6596,6 +6596,7 @@ static void drm_reset_display_info(struct drm_connector *connector)
info->has_hdmi_infoframe = false;
info->rgb_quant_range_selectable = false;
memset(&info->hdmi, 0, sizeof(info->hdmi));
+ memset(&connector->hdr_sink_metadata, 0, sizeof(connector->hdr_sink_metadata));
info->edid_hdmi_rgb444_dc_modes = 0;
info->edid_hdmi_ycbcr444_dc_modes = 0;
--
2.25.1
On Wed, 14 May 2025, "feijuan.li" <feijuan.li@samsung.com> wrote: > 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@samsung.com> Reviewed-by: Jani Nikula <jani.nikula@intel.com> > --- > drivers/gpu/drm/drm_edid.c | 1 + > 1 file changed, 1 insertion(+) > > diff --git a/drivers/gpu/drm/drm_edid.c b/drivers/gpu/drm/drm_edid.c > index 13bc4c290b17..9edb3247c767 100644 > --- a/drivers/gpu/drm/drm_edid.c > +++ b/drivers/gpu/drm/drm_edid.c > @@ -6596,6 +6596,7 @@ static void drm_reset_display_info(struct drm_connector *connector) > info->has_hdmi_infoframe = false; > info->rgb_quant_range_selectable = false; > memset(&info->hdmi, 0, sizeof(info->hdmi)); > + memset(&connector->hdr_sink_metadata, 0, sizeof(connector->hdr_sink_metadata)); > > info->edid_hdmi_rgb444_dc_modes = 0; > info->edid_hdmi_ycbcr444_dc_modes = 0; -- Jani Nikula, Intel
On Wed, 14 May 2025, Jani Nikula <jani.nikula@linux.intel.com> wrote:
> On Wed, 14 May 2025, "feijuan.li" <feijuan.li@samsung.com> wrote:
>> 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@samsung.com>
>
> Reviewed-by: Jani Nikula <jani.nikula@intel.com>
And pushed to drm-misc-fixes, with
Fixes: e85959d6cbe0 ("drm: Parse HDR metadata info from EDID")
Cc: <stable@vger.kernel.org> # v5.3+
Thanks for the patch.
BR,
Jani.
>
>
>> ---
>> drivers/gpu/drm/drm_edid.c | 1 +
>> 1 file changed, 1 insertion(+)
>>
>> diff --git a/drivers/gpu/drm/drm_edid.c b/drivers/gpu/drm/drm_edid.c
>> index 13bc4c290b17..9edb3247c767 100644
>> --- a/drivers/gpu/drm/drm_edid.c
>> +++ b/drivers/gpu/drm/drm_edid.c
>> @@ -6596,6 +6596,7 @@ static void drm_reset_display_info(struct drm_connector *connector)
>> info->has_hdmi_infoframe = false;
>> info->rgb_quant_range_selectable = false;
>> memset(&info->hdmi, 0, sizeof(info->hdmi));
>> + memset(&connector->hdr_sink_metadata, 0, sizeof(connector->hdr_sink_metadata));
>>
>> info->edid_hdmi_rgb444_dc_modes = 0;
>> info->edid_hdmi_ycbcr444_dc_modes = 0;
--
Jani Nikula, Intel
© 2016 - 2026 Red Hat, Inc.