aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/imx/imx-ldb.c
diff options
context:
space:
mode:
authorDave Airlie <airlied@redhat.com>2018-07-26 22:20:04 -0400
committerDave Airlie <airlied@redhat.com>2018-07-26 22:20:10 -0400
commita6f6cdefd408f4ab74060538931241a95fc2362b (patch)
tree6b1c72ad2cfef97a8c0f57386dcbba9f48680582 /drivers/gpu/drm/imx/imx-ldb.c
parent500775074f88d9cf5416bed2ca19592812d62c41 (diff)
parent81f2b25adddeff2fc7fdd1f23f889d018ba65466 (diff)
Merge tag 'imx-drm-next-2018-07-20' of git://git.pengutronix.de/git/pza/linux into drm-next
drm/imx: cleanup and csi improvements - Remove the unused struct imx_drm_crtc and the unused pipes field from imx_drm_device and replace drm_dev_unref with drm_dev_put. - Extend CSI configuration to support RGB888 and BGR888 capture, as well as 16-bit RGB565 capture via a parallel bus. - Add CPMEM support for negative interlace offsets, which is necessary to support writing captured bottom-top interlaced fields to memory with interleaved lines. Signed-off-by: Dave Airlie <airlied@redhat.com> Link: https://patchwork.freedesktop.org/patch/msgid/1532100583.3438.9.camel@pengutronix.de
Diffstat (limited to 'drivers/gpu/drm/imx/imx-ldb.c')
-rw-r--r--drivers/gpu/drm/imx/imx-ldb.c9
1 files changed, 6 insertions, 3 deletions
diff --git a/drivers/gpu/drm/imx/imx-ldb.c b/drivers/gpu/drm/imx/imx-ldb.c
index 7312beb6f1fc..3bd0f8a18e74 100644
--- a/drivers/gpu/drm/imx/imx-ldb.c
+++ b/drivers/gpu/drm/imx/imx-ldb.c
@@ -611,6 +611,9 @@ static int imx_ldb_bind(struct device *dev, struct device *master, void *data)
611 return PTR_ERR(imx_ldb->regmap); 611 return PTR_ERR(imx_ldb->regmap);
612 } 612 }
613 613
614 /* disable LDB by resetting the control register to POR default */
615 regmap_write(imx_ldb->regmap, IOMUXC_GPR2, 0);
616
614 imx_ldb->dev = dev; 617 imx_ldb->dev = dev;
615 618
616 if (of_id) 619 if (of_id)
@@ -651,14 +654,14 @@ static int imx_ldb_bind(struct device *dev, struct device *master, void *data)
651 if (ret || i < 0 || i > 1) 654 if (ret || i < 0 || i > 1)
652 return -EINVAL; 655 return -EINVAL;
653 656
657 if (!of_device_is_available(child))
658 continue;
659
654 if (dual && i > 0) { 660 if (dual && i > 0) {
655 dev_warn(dev, "dual-channel mode, ignoring second output\n"); 661 dev_warn(dev, "dual-channel mode, ignoring second output\n");
656 continue; 662 continue;
657 } 663 }
658 664
659 if (!of_device_is_available(child))
660 continue;
661
662 channel = &imx_ldb->channel[i]; 665 channel = &imx_ldb->channel[i];
663 channel->ldb = imx_ldb; 666 channel->ldb = imx_ldb;
664 channel->chno = i; 667 channel->chno = i;