Use the helper function to update the connector's information. This
makes sure that HDMI-related events are handled in a generic way.
Currently it is limited to the HDMI state reporting to the sound system.

Signed-off-by: Dmitry Baryshkov <dmitry.barysh...@linaro.org>
---
 drivers/gpu/drm/vc4/vc4_hdmi.c | 8 ++------
 1 file changed, 2 insertions(+), 6 deletions(-)

diff --git a/drivers/gpu/drm/vc4/vc4_hdmi.c b/drivers/gpu/drm/vc4/vc4_hdmi.c
index 
3364ef90968dad3074800f02926300ffceb75c69..3fe025251f939290bb4430e2f5163b6549479fc0
 100644
--- a/drivers/gpu/drm/vc4/vc4_hdmi.c
+++ b/drivers/gpu/drm/vc4/vc4_hdmi.c
@@ -383,7 +383,6 @@ static void vc4_hdmi_handle_hotplug(struct vc4_hdmi 
*vc4_hdmi,
                                    enum drm_connector_status status)
 {
        struct drm_connector *connector = &vc4_hdmi->connector;
-       const struct drm_edid *drm_edid;
        int ret;
 
        /*
@@ -405,17 +404,14 @@ static void vc4_hdmi_handle_hotplug(struct vc4_hdmi 
*vc4_hdmi,
                return;
        }
 
-       drm_edid = drm_edid_read_ddc(connector, vc4_hdmi->ddc);
+       drm_atomic_helper_connector_hdmi_hotplug(connector, status);
 
-       drm_edid_connector_update(connector, drm_edid);
        cec_s_phys_addr(vc4_hdmi->cec_adap,
                        connector->display_info.source_physical_address, false);
 
-       if (!drm_edid)
+       if (status != connector_status_connected)
                return;
 
-       drm_edid_free(drm_edid);
-
        for (;;) {
                ret = vc4_hdmi_reset_link(connector, ctx);
                if (ret == -EDEADLK) {

-- 
2.39.5

Reply via email to