drm: bridge: Link encoder and bridge in core code
[linux-2.6-block.git] / drivers / gpu / drm / fsl-dcu / fsl_dcu_drm_rgb.c
index e1dd75b181189bbc27f81eb92ad3f308b735aa2e..c3651456c963f4a87b47694e9085f4663d0b2965 100644 (file)
@@ -58,17 +58,10 @@ static void fsl_dcu_drm_connector_destroy(struct drm_connector *connector)
        drm_connector_cleanup(connector);
 }
 
-static enum drm_connector_status
-fsl_dcu_drm_connector_detect(struct drm_connector *connector, bool force)
-{
-       return connector_status_connected;
-}
-
 static const struct drm_connector_funcs fsl_dcu_drm_connector_funcs = {
        .atomic_duplicate_state = drm_atomic_helper_connector_duplicate_state,
        .atomic_destroy_state = drm_atomic_helper_connector_destroy_state,
        .destroy = fsl_dcu_drm_connector_destroy,
-       .detect = fsl_dcu_drm_connector_detect,
        .dpms = drm_atomic_helper_connector_dpms,
        .fill_modes = drm_helper_probe_single_connector_modes,
        .reset = drm_atomic_helper_connector_reset,
@@ -167,10 +160,7 @@ static int fsl_dcu_attach_endpoint(struct fsl_dcu_drm_device *fsl_dev,
        if (!bridge)
                return -ENODEV;
 
-       fsl_dev->encoder.bridge = bridge;
-       bridge->encoder = &fsl_dev->encoder;
-
-       return drm_bridge_attach(fsl_dev->drm, bridge);
+       return drm_bridge_attach(&fsl_dev->encoder, bridge, NULL);
 }
 
 int fsl_dcu_create_outputs(struct fsl_dcu_drm_device *fsl_dev)