summaryrefslogtreecommitdiffstats
path: root/drivers
diff options
context:
space:
mode:
authorIvo Clarysse <ivo.clarysse@gmail.com>2010-04-01 18:04:26 +0200
committerSascha Hauer <s.hauer@pengutronix.de>2010-04-02 12:07:56 +0200
commit2b7effde81e31efdead1382dd355168240ba4e06 (patch)
treedae52a6ac1b3b7ca353b4673b91d46f976c991cd /drivers
parentc1894b4bc7ae58f74b01e4a31b267680c721b727 (diff)
downloadbarebox-2b7effde81e31efdead1382dd355168240ba4e06.tar.gz
barebox-2b7effde81e31efdead1382dd355168240ba4e06.tar.xz
i.MX21: support framebuffer
This patch allows using the i.MX (LCDC) framebuffer driver on boards using an i.MX21 SoC. Signed-off-by: Ivo Clarysse <ivo.clarysse@gmail.com> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Diffstat (limited to 'drivers')
-rw-r--r--drivers/video/imx.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/drivers/video/imx.c b/drivers/video/imx.c
index 9a30ca46f3..87c08d325a 100644
--- a/drivers/video/imx.c
+++ b/drivers/video/imx.c
@@ -251,6 +251,9 @@ static void imxfb_enable_controller(struct fb_info *info)
struct imxfb_info *fbi = info->priv;
writel(RMCR_LCDC_EN, fbi->regs + LCDC_RMCR);
+#ifdef CONFIG_ARCH_IMX21
+ PCCR0 |= PCCR0_PERCLK3_EN | PCCR0_HCLK_LCDC_EN;
+#endif
#ifdef CONFIG_ARCH_IMX27
PCCR0 |= PCCR0_LCDC_EN;
PCCR1 |= PCCR1_HCLK_LCDC;
@@ -263,6 +266,9 @@ static void imxfb_disable_controller(struct fb_info *info)
struct imxfb_info *fbi = info->priv;
writel(0, fbi->regs + LCDC_RMCR);
+#ifdef CONFIG_ARCH_IMX21
+ PCCR0 &= ~(PCCR0_PERCLK3_EN | PCCR0_HCLK_LCDC_EN);
+#endif
#ifdef CONFIG_ARCH_IMX27
PCCR0 &= ~PCCR0_LCDC_EN;
PCCR1 &= ~PCCR1_HCLK_LCDC;
@@ -505,6 +511,9 @@ static int imxfb_probe(struct device_d *dev)
if (!pdata)
return -ENODEV;
+#ifdef CONFIG_ARCH_IMX21
+ PCCR0 &= ~(PCCR0_PERCLK3_EN | PCCR0_HCLK_LCDC_EN);
+#endif
#ifdef CONFIG_ARCH_IMX27
PCCR0 &= ~PCCR0_LCDC_EN;
PCCR1 &= ~PCCR1_HCLK_LCDC;