diff options
author | Jerry Huang <Chang-Ming.Huang@freescale.com> | 2011-11-01 15:16:43 +0000 |
---|---|---|
committer | Anatolij Gustschin <agust@denx.de> | 2011-11-24 22:59:51 +0100 |
commit | d8bf22bb0ee95ac5fd74a3b357a47bc94283336d (patch) | |
tree | 8a55dcda6a93f355120a01c5ebb1ed62770702d3 | |
parent | e6bbe53da015285ae67606a4eca1a8996f368aab (diff) |
DIU: 1080P and 720P support
Add the 1920x1080 and 1280x720 resolution support.
Signed-off-by: Jerry Huang <Chang-Ming.Huang@freescale.com>
Acked-by: Timur Tabi <timur@freescale.com>
CC: Anatolij Gustschin <agust@denx.de>
-rw-r--r-- | drivers/video/fsl_diu_fb.c | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/drivers/video/fsl_diu_fb.c b/drivers/video/fsl_diu_fb.c index 350241ea3b..648ffa3a67 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; |