aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/imx/imx-ldb.c
diff options
context:
space:
mode:
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 56dd7a9a8e25..dd5312b02a8d 100644
--- a/drivers/gpu/drm/imx/imx-ldb.c
+++ b/drivers/gpu/drm/imx/imx-ldb.c
@@ -612,6 +612,9 @@ static int imx_ldb_bind(struct device *dev, struct device *master, void *data)
612 return PTR_ERR(imx_ldb->regmap); 612 return PTR_ERR(imx_ldb->regmap);
613 } 613 }
614 614
615 /* disable LDB by resetting the control register to POR default */
616 regmap_write(imx_ldb->regmap, IOMUXC_GPR2, 0);
617
615 imx_ldb->dev = dev; 618 imx_ldb->dev = dev;
616 619
617 if (of_id) 620 if (of_id)
@@ -652,14 +655,14 @@ static int imx_ldb_bind(struct device *dev, struct device *master, void *data)
652 if (ret || i < 0 || i > 1) 655 if (ret || i < 0 || i > 1)
653 return -EINVAL; 656 return -EINVAL;
654 657
658 if (!of_device_is_available(child))
659 continue;
660
655 if (dual && i > 0) { 661 if (dual && i > 0) {
656 dev_warn(dev, "dual-channel mode, ignoring second output\n"); 662 dev_warn(dev, "dual-channel mode, ignoring second output\n");
657 continue; 663 continue;
658 } 664 }
659 665
660 if (!of_device_is_available(child))
661 continue;
662
663 channel = &imx_ldb->channel[i]; 666 channel = &imx_ldb->channel[i];
664 channel->ldb = imx_ldb; 667 channel->ldb = imx_ldb;
665 channel->chno = i; 668 channel->chno = i;