[PATCH 51/133] [Jaunty SRU] ARM.imx51 Freescale:ENGR00111670-2 mxcfb: support mode string on command line
Brad Figg
brad.figg at canonical.com
Thu Jul 9 16:48:41 UTC 2009
From: Rob Herring <r.herring at freescale.com>
Support mode string on kernel cmd line.
Unblank DI1 when it is primary display.
Signed-off-by: Rob Herring <r.herring at freescale.com>
Signed-off-by: Brad Figg <brad.figg at canonical.com>
---
arch/arm/plat-mxc/include/mach/mxc.h | 1 +
drivers/video/mxc/mxc_ipuv3_fb.c | 10 +++++++++-
2 files changed, 10 insertions(+), 1 deletions(-)
diff --git a/arch/arm/plat-mxc/include/mach/mxc.h b/arch/arm/plat-mxc/include/mach/mxc.h
index b8d738e..860bcad 100644
--- a/arch/arm/plat-mxc/include/mach/mxc.h
+++ b/arch/arm/plat-mxc/include/mach/mxc.h
@@ -151,6 +151,7 @@ struct mxc_lightsensor_platform_data {
struct mxc_fb_platform_data {
struct fb_videomode *mode;
+ char *mode_str;
u32 interface_pix_fmt;
};
diff --git a/drivers/video/mxc/mxc_ipuv3_fb.c b/drivers/video/mxc/mxc_ipuv3_fb.c
index 55911d8..2b9d43d 100644
--- a/drivers/video/mxc/mxc_ipuv3_fb.c
+++ b/drivers/video/mxc/mxc_ipuv3_fb.c
@@ -901,13 +901,14 @@ static int mxcfb_probe(struct platform_device *pdev)
if (!g_dp_in_use) {
mxcfbi->ipu_ch_irq = IPU_IRQ_BG_SYNC_EOF;
mxcfbi->ipu_ch = MEM_BG_SYNC;
+ mxcfbi->blank = FB_BLANK_UNBLANK;
} else {
mxcfbi->ipu_ch_irq = IPU_IRQ_DC_SYNC_EOF;
mxcfbi->ipu_ch = MEM_DC_SYNC;
fbi->var.nonstd = IPU_PIX_FMT_UYVY;
+ mxcfbi->blank = FB_BLANK_POWERDOWN;
}
mxcfbi->ipu_di = pdev->id;
- mxcfbi->blank = FB_BLANK_POWERDOWN;
strcpy(fbi->fix.id, "DISP3 BG - DI1");
} else if (pdev->id == 2) { /* Overlay */
@@ -942,6 +943,13 @@ static int mxcfb_probe(struct platform_device *pdev)
fbi->var.xres = 240;
fbi->var.yres = 320;
+ if (!fb_mode && plat_data && plat_data->mode_str)
+ fb_mode = plat_data->mode_str;
+
+ if (fb_mode)
+ fb_find_mode(&fbi->var, fbi, fb_mode, NULL, 0, NULL,
+ default_bpp);
+
if (plat_data) {
mxcfbi->ipu_di_pix_fmt = plat_data->interface_pix_fmt;
if (plat_data->mode)
--
1.6.0.4
More information about the kernel-team
mailing list