drm/bridge: tc358767: switch to ->edid_read callback
authorJani Nikula <jani.nikula@intel.com>
Tue, 23 Jan 2024 19:37:43 +0000 (21:37 +0200)
committerJani Nikula <jani.nikula@intel.com>
Fri, 9 Feb 2024 08:16:16 +0000 (10:16 +0200)
Prefer using the struct drm_edid based callback and functions.

Signed-off-by: Jani Nikula <jani.nikula@intel.com>
Reviewed-by: Neil Armstrong <neil.armstrong@linaro.org>
Link: https://patchwork.freedesktop.org/patch/msgid/978100cf8915b580ce66d34d27ed48858d9c161a.1706038510.git.jani.nikula@intel.com
drivers/gpu/drm/bridge/tc358767.c

index 37b1353..166f9a3 100644 (file)
@@ -1651,19 +1651,19 @@ static void tc_bridge_mode_set(struct drm_bridge *bridge,
        drm_mode_copy(&tc->mode, mode);
 }
 
-static struct edid *tc_get_edid(struct drm_bridge *bridge,
-                               struct drm_connector *connector)
+static const struct drm_edid *tc_edid_read(struct drm_bridge *bridge,
+                                          struct drm_connector *connector)
 {
        struct tc_data *tc = bridge_to_tc(bridge);
 
-       return drm_get_edid(connector, &tc->aux.ddc);
+       return drm_edid_read_ddc(connector, &tc->aux.ddc);
 }
 
 static int tc_connector_get_modes(struct drm_connector *connector)
 {
        struct tc_data *tc = connector_to_tc(connector);
        int num_modes;
-       struct edid *edid;
+       const struct drm_edid *drm_edid;
        int ret;
 
        ret = tc_get_display_props(tc);
@@ -1678,10 +1678,10 @@ static int tc_connector_get_modes(struct drm_connector *connector)
                        return num_modes;
        }
 
-       edid = tc_get_edid(&tc->bridge, connector);
-       drm_connector_update_edid_property(connector, edid);
-       num_modes = drm_add_edid_modes(connector, edid);
-       kfree(edid);
+       drm_edid = tc_edid_read(&tc->bridge, connector);
+       drm_edid_connector_update(connector, drm_edid);
+       num_modes = drm_edid_connector_add_modes(connector);
+       drm_edid_free(drm_edid);
 
        return num_modes;
 }
@@ -1850,7 +1850,7 @@ static const struct drm_bridge_funcs tc_edp_bridge_funcs = {
        .atomic_enable = tc_edp_bridge_atomic_enable,
        .atomic_disable = tc_edp_bridge_atomic_disable,
        .detect = tc_bridge_detect,
-       .get_edid = tc_get_edid,
+       .edid_read = tc_edid_read,
        .atomic_duplicate_state = drm_atomic_helper_bridge_duplicate_state,
        .atomic_destroy_state = drm_atomic_helper_bridge_destroy_state,
        .atomic_reset = drm_atomic_helper_bridge_reset,