aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/imx/imx-ldb.c
diff options
context:
space:
mode:
authorLaurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>2016-11-28 10:59:08 -0500
committerArchit Taneja <architt@codeaurora.org>2016-12-18 06:01:45 -0500
commit3bb80f249525c059572d4bc89ac77ac2e511bcbe (patch)
tree4c67445f057de2a7bbffbbe9ce004bbf1ebd0a4a /drivers/gpu/drm/imx/imx-ldb.c
parent2407d1dc04789bfb2f39d248644981d2233feb0e (diff)
drm: bridge: Link encoder and bridge in core code
Instead of linking encoders and bridges in every driver (and getting it wrong half of the time, as many drivers forget to set the drm_bridge encoder pointer), do so in core code. The drm_bridge_attach() function needs the encoder and optional previous bridge to perform that task, update all the callers. Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com> Acked-by: Stefan Agner <stefan@agner.ch> # For DCU Acked-by: Boris Brezillon <boris.brezillon@free-electrons.com> # For atmel-hlcdc Acked-by: Vincent Abriou <vincent.abriou@st.com> # For STI Acked-by: Maxime Ripard <maxime.ripard@free-electrons.com> # For sun4i Acked-by: Xinliang Liu <z.liuxinliang@hisilicon.com> # For hisilicon Acked-by: Jyri Sarha <jsarha@ti.com> # For tilcdc Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch> Signed-off-by: Archit Taneja <architt@codeaurora.org> Link: http://patchwork.freedesktop.org/patch/msgid/1481709550-29226-4-git-send-email-laurent.pinchart+renesas@ideasonboard.com
Diffstat (limited to 'drivers/gpu/drm/imx/imx-ldb.c')
-rw-r--r--drivers/gpu/drm/imx/imx-ldb.c6
1 files changed, 2 insertions, 4 deletions
diff --git a/drivers/gpu/drm/imx/imx-ldb.c b/drivers/gpu/drm/imx/imx-ldb.c
index 516d06490465..ec49ea3d8e40 100644
--- a/drivers/gpu/drm/imx/imx-ldb.c
+++ b/drivers/gpu/drm/imx/imx-ldb.c
@@ -454,10 +454,8 @@ static int imx_ldb_register(struct drm_device *drm,
454 DRM_MODE_ENCODER_LVDS, NULL); 454 DRM_MODE_ENCODER_LVDS, NULL);
455 455
456 if (imx_ldb_ch->bridge) { 456 if (imx_ldb_ch->bridge) {
457 imx_ldb_ch->bridge->encoder = encoder; 457 ret = drm_bridge_attach(&imx_ldb_ch->encoder,
458 458 imx_ldb_ch->bridge, NULL);
459 imx_ldb_ch->encoder.bridge = imx_ldb_ch->bridge;
460 ret = drm_bridge_attach(drm, imx_ldb_ch->bridge);
461 if (ret) { 459 if (ret) {
462 DRM_ERROR("Failed to initialize bridge with drm\n"); 460 DRM_ERROR("Failed to initialize bridge with drm\n");
463 return ret; 461 return ret;