summaryrefslogtreecommitdiffstats
path: root/packages/linux/linux-2.6.25/cm-x270/0005-add-display-set-default-16bpp.patch
blob: b16b7e91490d9cbc0d6820ccba3ca6a1b6a15ce4 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
From a70bd453457fe59f87ec1c06fbf49ab56dc71008 Mon Sep 17 00:00:00 2001
From: Cliff Brake <cbrake@bec-systems.com>
Date: Wed, 27 Feb 2008 16:44:42 -0500
Subject: [PATCH] add-display-set-default-16bpp

---
 arch/arm/mach-pxa/cm-x270.c |   31 +++++++++++++++++++++++++++++--
 1 files changed, 29 insertions(+), 2 deletions(-)

diff --git a/arch/arm/mach-pxa/cm-x270.c b/arch/arm/mach-pxa/cm-x270.c
index 0487aee..1aec199 100644
--- a/arch/arm/mach-pxa/cm-x270.c
+++ b/arch/arm/mach-pxa/cm-x270.c
@@ -259,6 +259,7 @@ static struct map_desc cmx270_io_desc[] __initdata = {
 #define MTYPE_CRT800x600	3
 #define MTYPE_TFT320x240	6
 #define MTYPE_STN640x480	7
+#define MTYPE_TFT640x480_SHARP	8
 
 static struct pxafb_mode_info generic_stn_320x240_mode = {
 	.pixclock	= 76923,
@@ -289,7 +290,7 @@ static struct pxafb_mach_info generic_stn_320x240 = {
 
 static struct pxafb_mode_info generic_tft_640x480_mode = {
 	.pixclock	= 38461,
-	.bpp		= 8,
+	.bpp		= 16,
 	.xres		= 640,
 	.yres		= 480,
 	.hsync_len	= 60,
@@ -315,7 +316,7 @@ static struct pxafb_mach_info generic_tft_640x480 = {
 
 static struct pxafb_mode_info generic_crt_640x480_mode = {
 	.pixclock	= 38461,
-	.bpp		= 8,
+	.bpp		= 16,
 	.xres		= 640,
 	.yres		= 480,
 	.hsync_len	= 63,
@@ -417,6 +418,29 @@ static struct pxafb_mach_info generic_stn_640x480 = {
 	.cmap_static	= 0,
 };
 
+
+static struct pxafb_mode_info sharp_vga_tft_mode = {
+	.pixclock		= 38461,
+	.bpp			= 16,
+	.xres			= 640,
+	.yres			= 480,
+	.hsync_len		= 60,
+	.vsync_len		= 2,
+	.left_margin		= 72,
+	.upper_margin		= 32,
+	.right_margin		= 72,
+	.lower_margin		= 10,
+	.sync			= 0,
+};
+
+static struct pxafb_mach_info sharp_vga_tft = {
+	.modes 			= &sharp_vga_tft_mode,
+	.num_modes		= 1,
+	.lccr0			= (LCCR0_PAS),
+	.lccr3			= (LCCR3_PixClkDiv(0x01) |
+			           LCCR3_Acb(0xff)),
+};
+
 static struct pxafb_mach_info *cmx270_display = &generic_crt_640x480;
 
 static int __init cmx270_set_display(char *str)
@@ -438,6 +462,9 @@ static int __init cmx270_set_display(char *str)
 	case MTYPE_TFT320x240:
 		cmx270_display = &generic_tft_320x240;
 		break;
+  case MTYPE_TFT640x480_SHARP:
+    cmx270_display = &sharp_vga_tft;
+    break;
 	case MTYPE_STN640x480:
 		cmx270_display = &generic_stn_640x480;
 		break;
-- 
1.5.4.rc4