summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorWolfgang Denk <wd@denx.de>2011-11-28 19:53:31 +0100
committerWolfgang Denk <wd@denx.de>2011-11-28 19:53:31 +0100
commitd5251742a7b2465c8de2841bc7db5a1e059c13a3 (patch)
treece9fbf7053897a972481e00f835685d8368d3553
parent99258c34103efad3395c679256a221731d010c4b (diff)
parentd8bf22bb0ee95ac5fd74a3b357a47bc94283336d (diff)
downloadu-boot-imx-d5251742a7b2465c8de2841bc7db5a1e059c13a3.zip
u-boot-imx-d5251742a7b2465c8de2841bc7db5a1e059c13a3.tar.gz
u-boot-imx-d5251742a7b2465c8de2841bc7db5a1e059c13a3.tar.bz2
Merge branch 'master' of git://git.denx.de/u-boot-video
* 'master' of git://git.denx.de/u-boot-video: DIU: 1080P and 720P support CFB: Fix font rendering on mx5 framebuffer
-rw-r--r--drivers/video/cfb_console.c2
-rw-r--r--drivers/video/fsl_diu_fb.c38
2 files changed, 39 insertions, 1 deletions
diff --git a/drivers/video/cfb_console.c b/drivers/video/cfb_console.c
index 32e890c..480df64 100644
--- a/drivers/video/cfb_console.c
+++ b/drivers/video/cfb_console.c
@@ -164,7 +164,7 @@
/*
* Defines for the i.MX31 driver (mx3fb.c)
*/
-#ifdef CONFIG_VIDEO_MX3
+#if defined(CONFIG_VIDEO_MX3) || defined(CONFIG_VIDEO_MX5)
#define VIDEO_FB_16BPP_WORD_SWAP
#endif
diff --git a/drivers/video/fsl_diu_fb.c b/drivers/video/fsl_diu_fb.c
index 350241e..648ffa3 100644
--- a/drivers/video/fsl_diu_fb.c
+++ b/drivers/video/fsl_diu_fb.c
@@ -106,6 +106,38 @@ static struct fb_videomode fsl_diu_mode_1280_1024 = {
.vmode = FB_VMODE_NONINTERLACED
};
+static struct fb_videomode fsl_diu_mode_1280_720 = {
+ .name = "1280x720-60",
+ .refresh = 60,
+ .xres = 1280,
+ .yres = 720,
+ .pixclock = 13426,
+ .left_margin = 192,
+ .right_margin = 64,
+ .upper_margin = 22,
+ .lower_margin = 1,
+ .hsync_len = 136,
+ .vsync_len = 3,
+ .sync = FB_SYNC_COMP_HIGH_ACT | FB_SYNC_VERT_HIGH_ACT,
+ .vmode = FB_VMODE_NONINTERLACED
+};
+
+static struct fb_videomode fsl_diu_mode_1920_1080 = {
+ .name = "1920x1080-60",
+ .refresh = 60,
+ .xres = 1920,
+ .yres = 1080,
+ .pixclock = 5787,
+ .left_margin = 328,
+ .right_margin = 120,
+ .upper_margin = 34,
+ .lower_margin = 1,
+ .hsync_len = 208,
+ .vsync_len = 3,
+ .sync = FB_SYNC_COMP_HIGH_ACT | FB_SYNC_VERT_HIGH_ACT,
+ .vmode = FB_VMODE_NONINTERLACED
+};
+
/*
* These are the fields of area descriptor(in DDR memory) for every plane
*/
@@ -259,6 +291,12 @@ int fsl_diu_init(u16 xres, u16 yres, u32 pixel_format, int gamma_fix)
case RESOLUTION(1280, 1024):
fsl_diu_mode_db = &fsl_diu_mode_1280_1024;
break;
+ case RESOLUTION(1280, 720):
+ fsl_diu_mode_db = &fsl_diu_mode_1280_720;
+ break;
+ case RESOLUTION(1920, 1080):
+ fsl_diu_mode_db = &fsl_diu_mode_1920_1080;
+ break;
default:
printf("DIU: Unsupported resolution %ux%u\n", xres, yres);
return -1;