[PATCH v2] drm/edid: fixed the bug that hdr metadata was not cleared

Jani Nikula jani.nikula at linux.intel.com
Tue May 13 08:31:16 UTC 2025


On Tue, 13 May 2025, Feijuan Li <feijuan.li at samsung.com> wrote:
> 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));

Please just put this memset inside drm_reset_display_info() right after:

	memset(&info->hdmi, 0, sizeof(info->hdmi));

I have local patches to move hdr_sink_metadata as part of display info
anyway. Adding an extra function here is a bit much.

There's also something wrong with the formatting here. Please use git
send-email.

BR,
Jani.

> +}
> +
>  /* 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
>
>

-- 
Jani Nikula, Intel


More information about the dri-devel mailing list