4 #define COLOR_RED_TFT16 0xf800
5 #define COLOR_GREEN_TFT16 0x07e0
6 #define COLOR_BLUE_TFT16 0x001f
8 #define LCDFRAMEBUFFER 0x33800000
10 #define S3C2410_LCDCON1_TFT (3<<5)
12 #define S3C2410_LCDCON1_TFT16BPP (12<<1)
14 #define S3C2410_LCDCON1_CLKVAL(x) ((x) << 8)
15 #define S3C2410_LCDCON2_VBPD(x) ((x) << 24)
17 #define S3C2410_LCDCON2_VBPD(x) ((x) << 24)
18 #define S3C2410_LCDCON2_LINEVAL(x) ((x) << 14)
19 #define S3C2410_LCDCON2_VFPD(x) ((x) << 6)
20 #define S3C2410_LCDCON2_VSPW(x) ((x) << 0)
22 #define S3C2410_LCDCON2_GET_VBPD(x) ( ((x) >> 24) & 0xFF)
23 #define S3C2410_LCDCON2_GET_VFPD(x) ( ((x) >> 6) & 0xFF)
24 #define S3C2410_LCDCON2_GET_VSPW(x) ( ((x) >> 0) & 0x3F)
26 #define S3C2410_LCDCON3_HBPD(x) ((x) << 19)
27 #define S3C2410_LCDCON3_WDLY(x) ((x) << 19)
28 #define S3C2410_LCDCON3_HOZVAL(x) ((x) << 8)
29 #define S3C2410_LCDCON3_HFPD(x) ((x) << 0)
30 #define S3C2410_LCDCON3_LINEBLANK(x)((x) << 0)
32 #define S3C2410_LCDCON3_GET_HBPD(x) ( ((x) >> 19) & 0x7F)
33 #define S3C2410_LCDCON3_GET_HFPD(x) ( ((x) >> 0) & 0xFF)
35 #define S3C2410_LCDCON4_MVAL(x) ((x) << 8)
36 #define S3C2410_LCDCON4_HSPW(x) ((x) << 0)
37 #define S3C2410_LCDCON4_WLH(x) ((x) << 0)
42 #define LCD5_BPP24BL (1 << 12)
43 #define LCD5_FRM565 (1 << 11)
44 #define LCD5_INVVCLK (1 << 10)
47 #define LCD5_INVVLINE (1 << 9)
49 #define LCD5_INVVFRAME (1 << 8)
51 #define LCD5_INVVD (1 << 7)
53 #define LCD5_INVVDEN (1 << 6)
55 #define LCD5_INVPWREN (1 << 5)
56 #define LCD5_INVLEND (1 << 4)
58 #define LCD5_PWREN (1 << 3)
59 #define LCD5_LEND (1 << 2)
60 #define LCD5_BSWP (1 << 1)
61 #define LCD5_HWSWP (1 << 0)
63 #define M5D(n) ((n) & 0x1fffff) // To get lower 21bits
67 #define LCD_XSIZE_TFT_240320 (240)
68 #define LCD_YSIZE_TFT_240320 (320)
70 #define LCD_XSIZE_TFT_320240 (320)
71 #define LCD_YSIZE_TFT_320240 (240)
73 #define LCD_XSIZE_TFT_480272 (480)
74 #define LCD_YSIZE_TFT_480272 (272)
77 #define LCD_XSIZE_TFT_640480 (640)
78 #define LCD_YSIZE_TFT_640480 (480)
80 #define LCD_XSIZE_TFT_800600 (800)
81 #define LCD_YSIZE_TFT_800600 (600)
84 #define SCR_XSIZE_TFT_240320 (LCD_XSIZE_TFT_240320*2)
85 #define SCR_YSIZE_TFT_240320 (LCD_YSIZE_TFT_240320*2)
87 #define SCR_XSIZE_TFT_320240 (LCD_XSIZE_TFT_320240*2)
88 #define SCR_YSIZE_TFT_320240 (LCD_YSIZE_TFT_320240*2)
90 #define SCR_XSIZE_TFT_480272 (LCD_XSIZE_TFT_480272*2)
91 #define SCR_YSIZE_TFT_480272 (LCD_YSIZE_TFT_480272*2)
93 #define SCR_XSIZE_TFT_640480 (LCD_XSIZE_TFT_640480*2)
94 #define SCR_YSIZE_TFT_640480 (LCD_YSIZE_TFT_640480*2)
96 #define SCR_XSIZE_TFT_800600 (LCD_XSIZE_TFT_800600*2)
97 #define SCR_YSIZE_TFT_800600 (LCD_YSIZE_TFT_800600*2)
101 #define LCD_240X320 1
103 #define LCD_320X240 2
104 #define LCD_480x272 3
109 unsigned long lcdcon1;
110 unsigned long lcdcon2;
111 unsigned long lcdcon3;
112 unsigned long lcdcon4;
113 unsigned long lcdcon5;
116 unsigned int scr_xsize;
117 unsigned int scr_ysize;
125 S3C2410_LCDCON1_TFT | \
126 S3C2410_LCDCON1_CLKVAL(10),
129 S3C2410_LCDCON2_LINEVAL(319)| \
130 S3C2410_LCDCON2_VFPD(2)| \
131 S3C2410_LCDCON2_VSPW(4),
134 S3C2410_LCDCON3_HOZVAL(239)| \
135 S3C2410_LCDCON3_HFPD(8),
138 S3C2410_LCDCON4_HSPW(6),
153 S3C2410_LCDCON1_TFT | \
154 S3C2410_LCDCON1_CLKVAL(5),
157 S3C2410_LCDCON2_LINEVAL(239)| \
158 S3C2410_LCDCON2_VFPD(5)| \
159 S3C2410_LCDCON2_VSPW(3),
162 S3C2410_LCDCON3_HOZVAL(319)| \
163 S3C2410_LCDCON3_HFPD(20),
166 S3C2410_LCDCON4_HSPW(30),
181 S3C2410_LCDCON1_TFT | \
182 S3C2410_LCDCON1_CLKVAL(5),
185 S3C2410_LCDCON2_LINEVAL(271)| \
186 S3C2410_LCDCON2_VFPD(2)| \
187 S3C2410_LCDCON2_VSPW(10),
190 S3C2410_LCDCON3_HOZVAL(479)| \
191 S3C2410_LCDCON3_HFPD(2),
194 S3C2410_LCDCON4_HSPW(41),