drm/bridge: dw-hdmi: Adapt to bridge API change
authorFabio Estevam <fabio.estevam@freescale.com>
Tue, 27 Jan 2015 12:21:49 +0000 (10:21 -0200)
committerThierry Reding <treding@nvidia.com>
Wed, 28 Jan 2015 09:01:30 +0000 (10:01 +0100)
Commit fbc4572e9c48e45b ("drm/bridge: make bridge registration independent of
drm flow") introduced some drm/bridge API modifications. Make the necessary
changes so that we can avoid the build breakage:

drivers/gpu/drm/bridge/dw_hdmi.c: In function 'dw_hdmi_bridge_destroy':
drivers/gpu/drm/bridge/dw_hdmi.c:1378:2: error: implicit declaration of function 'drm_bridge_cleanup' [-Werror=implicit-function-declaration]
drivers/gpu/drm/bridge/dw_hdmi.c: At top level:
drivers/gpu/drm/bridge/dw_hdmi.c:1471:2: error: unknown field 'destroy' specified in initializer
drivers/gpu/drm/bridge/dw_hdmi.c: In function 'dw_hdmi_register':
drivers/gpu/drm/bridge/dw_hdmi.c:1535:2: error: implicit declaration of function 'drm_bridge_init' [-Werror=implicit-function-declaration]

Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
Signed-off-by: Thierry Reding <treding@nvidia.com>
drivers/gpu/drm/bridge/dw_hdmi.c

index cb1dbb1aca165baa0c018b44491da94c7de59b5f..cd6a70647e3224ba1b45e135b5f6e066a33a5358 100644 (file)
@@ -1373,12 +1373,6 @@ static void dw_hdmi_bridge_enable(struct drm_bridge *bridge)
        dw_hdmi_poweron(hdmi);
 }
 
-static void dw_hdmi_bridge_destroy(struct drm_bridge *bridge)
-{
-       drm_bridge_cleanup(bridge);
-       kfree(bridge);
-}
-
 static void dw_hdmi_bridge_nop(struct drm_bridge *bridge)
 {
        /* do nothing */
@@ -1468,7 +1462,6 @@ struct drm_bridge_funcs dw_hdmi_bridge_funcs = {
        .post_disable = dw_hdmi_bridge_nop,
        .mode_set = dw_hdmi_bridge_mode_set,
        .mode_fixup = dw_hdmi_bridge_mode_fixup,
-       .destroy = dw_hdmi_bridge_destroy,
 };
 
 static irqreturn_t dw_hdmi_hardirq(int irq, void *dev_id)
@@ -1531,8 +1524,8 @@ static int dw_hdmi_register(struct drm_device *drm, struct dw_hdmi *hdmi)
 
        hdmi->bridge = bridge;
        bridge->driver_private = hdmi;
-
-       ret = drm_bridge_init(drm, bridge, &dw_hdmi_bridge_funcs);
+       bridge->funcs = &dw_hdmi_bridge_funcs;
+       ret = drm_bridge_attach(drm, bridge);
        if (ret) {
                DRM_ERROR("Failed to initialize bridge with drm\n");
                return -EINVAL;