Commit 1d0f9870 authored by Sascha Hauer's avatar Sascha Hauer

imxfb: add mx27 support

Signed-off-by: default avatarSascha Hauer <s.hauer@pengutronix.de>
parent ca489f8e
...@@ -43,7 +43,12 @@ ...@@ -43,7 +43,12 @@
#define LCDC_SIZE 0x04 #define LCDC_SIZE 0x04
#define SIZE_XMAX(x) ((((x) >> 4) & 0x3f) << 20) #define SIZE_XMAX(x) ((((x) >> 4) & 0x3f) << 20)
#ifdef CONFIG_ARCH_MX1
#define SIZE_YMAX(y) ((y) & 0x1ff) #define SIZE_YMAX(y) ((y) & 0x1ff)
#else
#define SIZE_YMAX(y) ((y) & 0x3ff)
#endif
#define LCDC_VPW 0x08 #define LCDC_VPW 0x08
#define VPW_VPW(x) ((x) & 0x3ff) #define VPW_VPW(x) ((x) & 0x3ff)
...@@ -53,7 +58,12 @@ ...@@ -53,7 +58,12 @@
#define CPOS_CC0 (1<<30) #define CPOS_CC0 (1<<30)
#define CPOS_OP (1<<28) #define CPOS_OP (1<<28)
#define CPOS_CXP(x) (((x) & 3ff) << 16) #define CPOS_CXP(x) (((x) & 3ff) << 16)
#ifdef CONFIG_ARCH_MX1
#define CPOS_CYP(y) ((y) & 0x1ff) #define CPOS_CYP(y) ((y) & 0x1ff)
#else
#define CPOS_CYP(y) ((y) & 0x3ff)
#endif
#define LCDC_LCWHB 0x10 #define LCDC_LCWHB 0x10
#define LCWHB_BK_EN (1<<31) #define LCWHB_BK_EN (1<<31)
...@@ -62,9 +72,16 @@ ...@@ -62,9 +72,16 @@
#define LCWHB_BD(x) ((x) & 0xff) #define LCWHB_BD(x) ((x) & 0xff)
#define LCDC_LCHCC 0x14 #define LCDC_LCHCC 0x14
#ifdef CONFIG_ARCH_MX1
#define LCHCC_CUR_COL_R(r) (((r) & 0x1f) << 11) #define LCHCC_CUR_COL_R(r) (((r) & 0x1f) << 11)
#define LCHCC_CUR_COL_G(g) (((g) & 0x3f) << 5) #define LCHCC_CUR_COL_G(g) (((g) & 0x3f) << 5)
#define LCHCC_CUR_COL_B(b) ((b) & 0x1f) #define LCHCC_CUR_COL_B(b) ((b) & 0x1f)
#else
#define LCHCC_CUR_COL_R(r) (((r) & 0x3f) << 12)
#define LCHCC_CUR_COL_G(g) (((g) & 0x3f) << 6)
#define LCHCC_CUR_COL_B(b) ((b) & 0x3f)
#endif
#define LCDC_PCR 0x18 #define LCDC_PCR 0x18
...@@ -91,7 +108,13 @@ ...@@ -91,7 +108,13 @@
/* bit fields in imxfb.h */ /* bit fields in imxfb.h */
#define LCDC_RMCR 0x34 #define LCDC_RMCR 0x34
#ifdef CONFIG_ARCH_MX1
#define RMCR_LCDC_EN (1<<1) #define RMCR_LCDC_EN (1<<1)
#else
#define RMCR_LCDC_EN 0
#endif
#define RMCR_SELF_REF (1<<0) #define RMCR_SELF_REF (1<<0)
#define LCDC_LCDICR 0x38 #define LCDC_LCDICR 0x38
...@@ -365,10 +388,6 @@ static void imxfb_enable_controller(struct imxfb_info *fbi) ...@@ -365,10 +388,6 @@ static void imxfb_enable_controller(struct imxfb_info *fbi)
{ {
pr_debug("Enabling LCD controller\n"); pr_debug("Enabling LCD controller\n");
/* initialize LCDC */
writel(readl(fbi->regs + LCDC_RMCR) & ~RMCR_LCDC_EN,
fbi->regs + LCDC_RMCR); /* just to be safe... */
writel(fbi->screen_dma, fbi->regs + LCDC_SSA); writel(fbi->screen_dma, fbi->regs + LCDC_SSA);
/* physical screen start address */ /* physical screen start address */
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment