summaryrefslogtreecommitdiffstats
path: root/meta/recipes-kernel/linux/linux-omap-2.6.29/omap3evm/omap3evm-lcd-redtint.diff
diff options
context:
space:
mode:
Diffstat (limited to 'meta/recipes-kernel/linux/linux-omap-2.6.29/omap3evm/omap3evm-lcd-redtint.diff')
-rw-r--r--meta/recipes-kernel/linux/linux-omap-2.6.29/omap3evm/omap3evm-lcd-redtint.diff66
1 files changed, 66 insertions, 0 deletions
diff --git a/meta/recipes-kernel/linux/linux-omap-2.6.29/omap3evm/omap3evm-lcd-redtint.diff b/meta/recipes-kernel/linux/linux-omap-2.6.29/omap3evm/omap3evm-lcd-redtint.diff
new file mode 100644
index 0000000000..54ea3c9f68
--- /dev/null
+++ b/meta/recipes-kernel/linux/linux-omap-2.6.29/omap3evm/omap3evm-lcd-redtint.diff
@@ -0,0 +1,66 @@
1Message-ID: <c656a4d20809270046u341aec27k6d896d4b42e799d4@mail.gmail.com>
2Date: Sat, 27 Sep 2008 03:46:18 -0400
3From: "arun c" <arun.edarath@gmail.com>
4To: "Daniel Schaeffer" <daniel.schaeffer@timesys.com>
5Subject: Re: OMAP3EVM LCD red tint
6
7Hi Daniel Schaeffer
8
9On Fri, Sep 26, 2008 at 4:20 PM, Daniel Schaeffer
10<daniel.schaeffer@timesys.com> wrote:
11> Has anyone looked into why the LCD display on the OMAP3EVM is always tinted
12> red? I created a couple of color test images that I cat'ed to /dev/fb and it
13> looks like the blue color channel is completely ignored. I was testing on
14> v2.6.26-omap2 but is doesn't look like there have been any changes to the fb
15> driver since then so I'm assuming the issue is also present in the head of
16> the git tree.
17>
18> Regards,
19>
20> Daniel Schaeffer
21>
22
23Try the patch below(Remember that you may have to manually edit because
24this patch is against current HEAD)
25
26
27diff --git a/drivers/video/omap/lcd_omap3evm.c
28b/drivers/video/omap/lcd_omap3evm.c
29index a564ca5..821bafe 100644
30--- a/drivers/video/omap/lcd_omap3evm.c
31+++ b/drivers/video/omap/lcd_omap3evm.c
32@@ -44,6 +44,8 @@
33 #define ENABLE_VDAC_DEV_GRP 0x20
34 #define ENABLE_VPLL2_DEDICATED 0x05
35 #define ENABLE_VPLL2_DEV_GRP 0xE0
36+#define TWL4030_VPLL2_DEV_GRP 0x33
37+#define TWL4030_VPLL2_DEDICATED 0x36
38
39 #define TWL_LED_LEDEN 0x00
40 #define TWL_PWMA_PWMAON 0x00
41@@ -86,12 +88,24 @@ static void omap3evm_panel_cleanup(struct lcd_panel *panel)
42
43 static int omap3evm_panel_enable(struct lcd_panel *panel)
44 {
45+ if (omap_rev > OMAP3430_REV_ES1_0) {
46+ twl4030_i2c_write_u8(TWL4030_MODULE_PM_RECEIVER,
47+ ENABLE_VPLL2_DEDICATED, TWL4030_VPLL2_DEDICATED);
48+ twl4030_i2c_write_u8(TWL4030_MODULE_PM_RECEIVER,
49+ ENABLE_VPLL2_DEV_GRP, TWL4030_VPLL2_DEV_GRP);
50+ }
51 omap_set_gpio_dataout(LCD_PANEL_ENABLE_GPIO, 0);
52 return 0;
53 }
54
55 static void omap3evm_panel_disable(struct lcd_panel *panel)
56 {
57+ if (omap_rev > OMAP3430_REV_ES1_0) {
58+ twl4030_i2c_write_u8(TWL4030_MODULE_PM_RECEIVER, 0x0,
59+ TWL4030_VPLL2_DEDICATED);
60+ twl4030_i2c_write_u8(TWL4030_MODULE_PM_RECEIVER, 0x0,
61+ TWL4030_VPLL2_DEV_GRP);
62+ }
63 omap_set_gpio_dataout(LCD_PANEL_ENABLE_GPIO, 1);
64 }
65
66