summaryrefslogtreecommitdiffstats
path: root/meta/recipes-kernel/linux/linux-omap2-git/beagleboard/16bpp.patch
diff options
context:
space:
mode:
Diffstat (limited to 'meta/recipes-kernel/linux/linux-omap2-git/beagleboard/16bpp.patch')
-rw-r--r--meta/recipes-kernel/linux/linux-omap2-git/beagleboard/16bpp.patch137
1 files changed, 137 insertions, 0 deletions
diff --git a/meta/recipes-kernel/linux/linux-omap2-git/beagleboard/16bpp.patch b/meta/recipes-kernel/linux/linux-omap2-git/beagleboard/16bpp.patch
new file mode 100644
index 0000000000..d2bff4b018
--- /dev/null
+++ b/meta/recipes-kernel/linux/linux-omap2-git/beagleboard/16bpp.patch
@@ -0,0 +1,137 @@
1diff --git a/drivers/video/omap/Kconfig b/drivers/video/omap/Kconfig
2index bdeb8fb..bf256f3 100644
3--- a/drivers/video/omap/Kconfig
4+++ b/drivers/video/omap/Kconfig
5@@ -7,6 +7,27 @@ config FB_OMAP
6 help
7 Frame buffer driver for OMAP based boards.
8
9+choice
10+ depends on FB_OMAP && MACH_OMAP3_BEAGLE
11+ prompt "Screen resolution"
12+ default FB_OMAP_079M3R
13+ help
14+ Selected desired screen resolution
15+
16+config FB_OMAP_031M3R
17+ boolean "640 x 480 @ 60 Hz Reduced blanking"
18+
19+config FB_OMAP_048M3R
20+ boolean "800 x 600 @ 60 Hz Reduced blanking"
21+
22+config FB_OMAP_079M3R
23+ boolean "1024 x 768 @ 60 Hz Reduced blanking"
24+
25+config FB_OMAP_092M9R
26+ boolean "1280 x 720 @ 60 Hz Reduced blanking"
27+
28+endchoice
29+
30 config FB_OMAP_LCDC_EXTERNAL
31 bool "External LCD controller support"
32 depends on FB_OMAP
33diff --git a/drivers/video/omap/lcd_omap3beagle.c b/drivers/video/omap/lcd_omap3beagle.c
34index 69d4e06..5e098c2 100644
35--- a/drivers/video/omap/lcd_omap3beagle.c
36+++ b/drivers/video/omap/lcd_omap3beagle.c
37@@ -31,10 +31,6 @@
38
39 #define LCD_PANEL_ENABLE_GPIO 170
40
41-#define LCD_XRES 1024
42-#define LCD_YRES 768
43-#define LCD_PIXCLOCK 64000 /* in kHz */
44-
45 static int omap3beagle_panel_init(struct lcd_panel *panel,
46 struct omapfb_device *fbdev)
47 {
48@@ -65,19 +61,76 @@ static unsigned long omap3beagle_panel_get_caps(struct lcd_panel *panel)
49 struct lcd_panel omap3beagle_panel = {
50 .name = "omap3beagle",
51 .config = OMAP_LCDC_PANEL_TFT,
52-
53- .bpp = 24,
54+ .bpp = 16,
55 .data_lines = 24,
56- .x_res = LCD_XRES,
57- .y_res = LCD_YRES,
58- .hsw = 3, /* hsync_len (4) - 1 */
59- .hfp = 3, /* right_margin (4) - 1 */
60- .hbp = 39, /* left_margin (40) - 1 */
61- .vsw = 1, /* vsync_len (2) - 1 */
62- .vfp = 2, /* lower_margin */
63- .vbp = 7, /* upper_margin (8) - 1 */
64-
65- .pixel_clock = LCD_PIXCLOCK,
66+
67+#if defined CONFIG_FB_OMAP_031M3R
68+
69+ /* 640 x 480 @ 60 Hz Reduced blanking VESA CVT 0.31M3-R */
70+ .x_res = 640,
71+ .y_res = 480,
72+ .hfp = 48,
73+ .hsw = 32,
74+ .hbp = 80,
75+ .vfp = 3,
76+ .vsw = 4,
77+ .vbp = 7,
78+ .pixel_clock = 23500,
79+
80+#elif defined CONFIG_FB_OMAP_048M3R
81+
82+ /* 800 x 600 @ 60 Hz Reduced blanking VESA CVT 0.48M3-R */
83+ .x_res = 800,
84+ .y_res = 600,
85+ .hfp = 48,
86+ .hsw = 32,
87+ .hbp = 80,
88+ .vfp = 3,
89+ .vsw = 4,
90+ .vbp = 11,
91+ .pixel_clock = 35500,
92+
93+#elif defined CONFIG_FB_OMAP_079M3R
94+
95+ /* 1024 x 768 @ 60 Hz Reduced blanking VESA CVT 0.79M3-R */
96+ .x_res = 1024,
97+ .y_res = 768,
98+ .hfp = 48,
99+ .hsw = 32,
100+ .hbp = 80,
101+ .vfp = 3,
102+ .vsw = 4,
103+ .vbp = 15,
104+ .pixel_clock = 56000,
105+
106+#elif defined CONFIG_FB_OMAP_092M9R
107+
108+ /* 1280 x 720 @ 60 Hz Reduced blanking VESA CVT 0.92M9-R */
109+ .x_res = 1280,
110+ .y_res = 720,
111+ .hfp = 48,
112+ .hsw = 32,
113+ .hbp = 80,
114+ .vfp = 3,
115+ .vsw = 5,
116+ .vbp = 13,
117+ .pixel_clock = 64000,
118+
119+#else
120+
121+ /* use 640 x 480 if no config option */
122+ /* 640 x 480 @ 60 Hz Reduced blanking VESA CVT 0.31M3-R */
123+ .x_res = 640,
124+ .y_res = 480,
125+ .hfp = 48,
126+ .hsw = 32,
127+ .hbp = 80,
128+ .vfp = 3,
129+ .vsw = 4,
130+ .vbp = 7,
131+ .pixel_clock = 23500,
132+
133+#endif
134
135 .init = omap3beagle_panel_init,
136 .cleanup = omap3beagle_panel_cleanup,
137