|
|
|
@ -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; |
|
|
|
|