On Mon, 20 Oct 2025, Chu Guangqing <[email protected]> wrote:
> call drm_edid_connector_update to reset the information when edid is NULL.
> We can see the following comments in drm_edid.c
> If EDID is NULL, reset the information.
>
> Signed-off-by: Chu Guangqing <[email protected]>
> ---
> drivers/gpu/drm/sti/sti_hdmi.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/gpu/drm/sti/sti_hdmi.c b/drivers/gpu/drm/sti/sti_hdmi.c
> index 4e7c3d78b2b9..e0be1be8bcdd 100644
> --- a/drivers/gpu/drm/sti/sti_hdmi.c
> +++ b/drivers/gpu/drm/sti/sti_hdmi.c
> @@ -1008,7 +1008,7 @@ static int sti_hdmi_connector_get_modes(struct
> drm_connector *connector)
> return count;
>
> fail:
> - DRM_ERROR("Can't read HDMI EDID\n");
> + drm_edid_connector_update(connector, NULL);
The context above has:
drm_edid = drm_edid_read(connector);
drm_edid_connector_update(connector, drm_edid);
cec_notifier_set_phys_addr(hdmi->notifier,
connector->display_info.source_physical_address);
if (!drm_edid)
goto fail;
i.e. drm_edid_connector_update() already gets called regardless of
whether drm_edid is NULL or not. Precisely as intended in commit
f7945d9fa8b7 ("drm/sti/sti_hdmi: convert to struct drm_edid").
BR,
Jani.
> return 0;
> }
--
Jani Nikula, Intel