Use the ddc pointer provided by the generic connector.

Signed-off-by: Andrzej Pietrasiewicz <andrze...@collabora.com>
---
 drivers/gpu/drm/sun4i/sun4i_hdmi.h     |  1 -
 drivers/gpu/drm/sun4i/sun4i_hdmi_enc.c | 21 +++++++++++----------
 2 files changed, 11 insertions(+), 11 deletions(-)

diff --git a/drivers/gpu/drm/sun4i/sun4i_hdmi.h 
b/drivers/gpu/drm/sun4i/sun4i_hdmi.h
index 7ad3f06c127e..1649273b1493 100644
--- a/drivers/gpu/drm/sun4i/sun4i_hdmi.h
+++ b/drivers/gpu/drm/sun4i/sun4i_hdmi.h
@@ -265,7 +265,6 @@ struct sun4i_hdmi {
        struct clk              *tmds_clk;
 
        struct i2c_adapter      *i2c;
-       struct i2c_adapter      *ddc_i2c;
 
        /* Regmap fields for I2C adapter */
        struct regmap_field     *field_ddc_en;
diff --git a/drivers/gpu/drm/sun4i/sun4i_hdmi_enc.c 
b/drivers/gpu/drm/sun4i/sun4i_hdmi_enc.c
index b2df76addc75..4cc0bb232f6a 100644
--- a/drivers/gpu/drm/sun4i/sun4i_hdmi_enc.c
+++ b/drivers/gpu/drm/sun4i/sun4i_hdmi_enc.c
@@ -214,7 +214,7 @@ static int sun4i_hdmi_get_modes(struct drm_connector 
*connector)
        struct edid *edid;
        int ret;
 
-       edid = drm_get_edid(connector, hdmi->ddc_i2c ?: hdmi->i2c);
+       edid = drm_get_edid(connector, connector->ddc ?: hdmi->i2c);
        if (!edid)
                return 0;
 
@@ -599,11 +599,11 @@ static int sun4i_hdmi_bind(struct device *dev, struct 
device *master,
                goto err_disable_mod_clk;
        }
 
-       hdmi->ddc_i2c = sun4i_hdmi_get_ddc(dev);
-       if (IS_ERR(hdmi->ddc_i2c)) {
-               ret = PTR_ERR(hdmi->ddc_i2c);
+       hdmi->connector.ddc = sun4i_hdmi_get_ddc(dev);
+       if (IS_ERR(hdmi->connector.ddc)) {
+               ret = PTR_ERR(hdmi->connector.ddc);
                if (ret == -ENODEV)
-                       hdmi->ddc_i2c = NULL;
+                       hdmi->connector.ddc = NULL;
                else
                        goto err_del_i2c_adapter;
        }
@@ -640,9 +640,10 @@ static int sun4i_hdmi_bind(struct device *dev, struct 
device *master,
 
        drm_connector_helper_add(&hdmi->connector,
                                 &sun4i_hdmi_connector_helper_funcs);
-       ret = drm_connector_init(drm, &hdmi->connector,
-                                &sun4i_hdmi_connector_funcs,
-                                DRM_MODE_CONNECTOR_HDMIA);
+       ret = drm_connector_init_with_ddc(drm, &hdmi->connector,
+                                         &sun4i_hdmi_connector_funcs,
+                                         DRM_MODE_CONNECTOR_HDMIA,
+                                         hdmi->connector.ddc);
        if (ret) {
                dev_err(dev,
                        "Couldn't initialise the HDMI connector\n");
@@ -664,7 +665,7 @@ static int sun4i_hdmi_bind(struct device *dev, struct 
device *master,
        cec_delete_adapter(hdmi->cec_adap);
        drm_encoder_cleanup(&hdmi->encoder);
 err_put_ddc_i2c:
-       i2c_put_adapter(hdmi->ddc_i2c);
+       i2c_put_adapter(hdmi->connector.ddc);
 err_del_i2c_adapter:
        i2c_del_adapter(hdmi->i2c);
 err_disable_mod_clk:
@@ -685,7 +686,7 @@ static void sun4i_hdmi_unbind(struct device *dev, struct 
device *master,
        drm_connector_cleanup(&hdmi->connector);
        drm_encoder_cleanup(&hdmi->encoder);
        i2c_del_adapter(hdmi->i2c);
-       i2c_put_adapter(hdmi->ddc_i2c);
+       i2c_put_adapter(hdmi->connector.ddc);
        clk_disable_unprepare(hdmi->mod_clk);
        clk_disable_unprepare(hdmi->bus_clk);
 }
-- 
2.17.1

_______________________________________________
amd-gfx mailing list
amd-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/amd-gfx

Reply via email to