diff options
author | Linus Torvalds <torvalds@g5.osdl.org> | 2006-03-21 09:20:47 -0800 |
---|---|---|
committer | Linus Torvalds <torvalds@g5.osdl.org> | 2006-03-21 09:20:47 -0800 |
commit | 28c006c1f09ea92d4f2585a087a188955ce3f64c (patch) | |
tree | 2615749653cd3ba4852d2f5ed22f21eec0cd5712 /include/linux | |
parent | cbe037b46f564188045937e6006c5c1d6093618a (diff) | |
parent | 7abe53155b77c31028a7158883bc9aac705790da (diff) | |
download | blackbird-obmc-linux-28c006c1f09ea92d4f2585a087a188955ce3f64c.tar.gz blackbird-obmc-linux-28c006c1f09ea92d4f2585a087a188955ce3f64c.zip |
Merge master.kernel.org:/home/rmk/linux-2.6-arm
* master.kernel.org:/home/rmk/linux-2.6-arm:
[ARM] Fix cosmetic typo in asm/irq.h
[ARM] 3367/1: CLCD mode no longer supported on the RealView boards
[ARM] 3366/1: Allow the 16bpp mode configuration in the CLCD control register
Diffstat (limited to 'include/linux')
-rw-r--r-- | include/linux/amba/clcd.h | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/include/linux/amba/clcd.h b/include/linux/amba/clcd.h index 6b8d73dc1ab0..9cf64b1b688b 100644 --- a/include/linux/amba/clcd.h +++ b/include/linux/amba/clcd.h @@ -54,6 +54,7 @@ #define CNTL_LCDBPP4 (2 << 1) #define CNTL_LCDBPP8 (3 << 1) #define CNTL_LCDBPP16 (4 << 1) +#define CNTL_LCDBPP16_565 (6 << 1) #define CNTL_LCDBPP24 (5 << 1) #define CNTL_LCDBW (1 << 4) #define CNTL_LCDTFT (1 << 5) @@ -209,7 +210,16 @@ static inline void clcdfb_decode(struct clcd_fb *fb, struct clcd_regs *regs) val |= CNTL_LCDBPP8; break; case 16: - val |= CNTL_LCDBPP16; + /* + * PL110 cannot choose between 5551 and 565 modes in + * its control register + */ + if ((fb->dev->periphid & 0x000fffff) == 0x00041110) + val |= CNTL_LCDBPP16; + else if (fb->fb.var.green.length == 5) + val |= CNTL_LCDBPP16; + else + val |= CNTL_LCDBPP16_565; break; case 32: val |= CNTL_LCDBPP24; |