public inbox for linux-omap@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH] ARM: OMAP3: Fix omapfb's problem on OMAP3430sdp
@ 2008-09-01 13:37 stanley.miao
  2008-09-02  4:33 ` Gadiyar, Anand
                   ` (2 more replies)
  0 siblings, 3 replies; 15+ messages in thread
From: stanley.miao @ 2008-09-01 13:37 UTC (permalink / raw)
  To: linux-omap

In RGB565 mode, red and blue color are filtered, so the picture on LCD
looks green and dark.

Fix omapfb's problem on OMAP3430sdp.

Signed-off-by: Stanley Miao <stanley.miao@windriver.com>

---
diff --git a/drivers/video/omap/lcd_2430sdp.c
b/drivers/video/omap/lcd_2430sdp.c
index 9af6cd0..896a236 100644
--- a/drivers/video/omap/lcd_2430sdp.c
+++ b/drivers/video/omap/lcd_2430sdp.c
@@ -23,6 +23,7 @@
 
 #include <linux/module.h>
 #include <linux/platform_device.h>
+#include <linux/delay.h>
 #include <linux/i2c/twl4030.h>
 
 #include <mach/gpio.h>
@@ -45,6 +46,10 @@ static unsigned enable_gpio;
 #define ENABLE_VAUX3_DEDICATED	0x03
 #define ENABLE_VAUX3_DEV_GRP	0x20
 
+#define ENABLE_VPLL2_DEDICATED          0x05
+#define ENABLE_VPLL2_DEV_GRP            0xE0
+#define TWL4030_VPLL2_DEV_GRP           0x33
+#define TWL4030_VPLL2_DEDICATED         0x36
 
 #define t2_out(c, r, v) twl4030_i2c_write_u8(c, r, v)
 
@@ -76,6 +81,11 @@ static int sdp2430_panel_enable(struct lcd_panel
*panel)
 {
 	u8 ded_val, ded_reg;
 	u8 grp_val, grp_reg;
+	
+	if(!is_sil_rev_less_than(OMAP3430_REV_ES2_0)) {
+		t2_out(PM_RECEIVER, ENABLE_VPLL2_DEDICATED,TWL4030_VPLL2_DEDICATED);
+		t2_out(PM_RECEIVER, ENABLE_VPLL2_DEV_GRP,TWL4030_VPLL2_DEV_GRP);
+	}
 
 	if (machine_is_omap_3430sdp()) {
 		ded_reg = TWL4030_VAUX3_DEDICATED;
@@ -104,6 +114,11 @@ static void sdp2430_panel_disable(struct lcd_panel
*panel)
 {
 	omap_set_gpio_dataout(enable_gpio, 0);
 	omap_set_gpio_dataout(backlight_gpio, 0);
+	if(!is_sil_rev_less_than(OMAP3430_REV_ES2_0)) {
+		t2_out(PM_RECEIVER, 0x0, TWL4030_VPLL2_DEDICATED);
+		t2_out(PM_RECEIVER, 0x0, TWL4030_VPLL2_DEV_GRP);
+		mdelay(4);
+	}
 }
 
 static unsigned long sdp2430_panel_get_caps(struct lcd_panel *panel)

^ permalink raw reply related	[flat|nested] 15+ messages in thread
* [PATCH] ARM: OMAP3: Fix omapfb's problem on OMAP3430sdp
@ 2008-09-08  2:42 stanley.miao
  2008-09-08  3:29 ` stanley.miao
  0 siblings, 1 reply; 15+ messages in thread
From: stanley.miao @ 2008-09-08  2:42 UTC (permalink / raw)
  To: linux-omap@vger.kernel.org; +Cc: Tony Lindgren

For clarity, I re-send this request.


In RGB565 mode, red and blue color are filtered, so the picture on LCD
looks green and dark.

Fix omapfb's problem on OMAP3430sdp.

Signed-off-by: Stanley.Miao <stanley.miao@windriver.com>
---
 drivers/video/omap/lcd_2430sdp.c |   18 ++++++++++++++++++
 1 files changed, 18 insertions(+), 0 deletions(-)

diff --git a/drivers/video/omap/lcd_2430sdp.c
b/drivers/video/omap/lcd_2430sdp.c
index 9af6cd0..3747e7d 100644
--- a/drivers/video/omap/lcd_2430sdp.c
+++ b/drivers/video/omap/lcd_2430sdp.c
@@ -23,6 +23,7 @@
 
 #include <linux/module.h>
 #include <linux/platform_device.h>
+#include <linux/delay.h>
 #include <linux/i2c/twl4030.h>
 
 #include <mach/gpio.h>
@@ -45,6 +46,10 @@ static unsigned enable_gpio;
 #define ENABLE_VAUX3_DEDICATED	0x03
 #define ENABLE_VAUX3_DEV_GRP	0x20
 
+#define ENABLE_VPLL2_DEDICATED          0x05
+#define ENABLE_VPLL2_DEV_GRP            0xE0
+#define TWL4030_VPLL2_DEV_GRP           0x33
+#define TWL4030_VPLL2_DEDICATED         0x36
 
 #define t2_out(c, r, v) twl4030_i2c_write_u8(c, r, v)
 
@@ -77,11 +82,19 @@ static int sdp2430_panel_enable(struct lcd_panel
*panel)
 	u8 ded_val, ded_reg;
 	u8 grp_val, grp_reg;
 
+
 	if (machine_is_omap_3430sdp()) {
 		ded_reg = TWL4030_VAUX3_DEDICATED;
 		ded_val = ENABLE_VAUX3_DEDICATED;
 		grp_reg = TWL4030_VAUX3_DEV_GRP;
 		grp_val = ENABLE_VAUX3_DEV_GRP;
+
+		if (is_sil_rev_greater_than(OMAP3430_REV_ES1_0)) {
+			t2_out(PM_RECEIVER, ENABLE_VPLL2_DEDICATED,
+					TWL4030_VPLL2_DEDICATED);
+			t2_out(PM_RECEIVER, ENABLE_VPLL2_DEV_GRP,
+					TWL4030_VPLL2_DEV_GRP);
+		}
 	} else {
 		ded_reg = TWL4030_VAUX2_DEDICATED;
 		ded_val = ENABLE_VAUX2_DEDICATED;
@@ -104,6 +117,11 @@ static void sdp2430_panel_disable(struct lcd_panel
*panel)
 {
 	omap_set_gpio_dataout(enable_gpio, 0);
 	omap_set_gpio_dataout(backlight_gpio, 0);
+	if (is_sil_rev_greater_than(OMAP3430_REV_ES1_0)) {
+		t2_out(PM_RECEIVER, 0x0, TWL4030_VPLL2_DEDICATED);
+		t2_out(PM_RECEIVER, 0x0, TWL4030_VPLL2_DEV_GRP);
+		mdelay(4);
+	}
 }
 
 static unsigned long sdp2430_panel_get_caps(struct lcd_panel *panel)
-- 
1.5.6.3


^ permalink raw reply related	[flat|nested] 15+ messages in thread

end of thread, other threads:[~2008-09-10 17:46 UTC | newest]

Thread overview: 15+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2008-09-01 13:37 [PATCH] ARM: OMAP3: Fix omapfb's problem on OMAP3430sdp stanley.miao
2008-09-02  4:33 ` Gadiyar, Anand
2008-09-02  5:49 ` arun c
2008-09-02  6:13   ` stanley.miao
2008-09-02  8:14     ` Felipe Balbi
2008-09-02  9:33       ` stanley.miao
2008-09-05 17:13         ` Tony Lindgren
2008-09-08  2:27           ` stanley.miao
2008-09-02 14:51 ` David Brownell
2008-09-03  1:53   ` stanley.miao
2008-09-03  1:55     ` David Brownell
2008-09-03  3:40       ` stanley.miao
  -- strict thread matches above, loose matches on Subject: below --
2008-09-08  2:42 stanley.miao
2008-09-08  3:29 ` stanley.miao
2008-09-10 17:46   ` Tony Lindgren

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox