diff options
author | Liu Ying <Ying.Liu@freescale.com> | 2011-01-24 10:00:50 +0800 |
---|---|---|
committer | Liu Ying <Ying.Liu@freescale.com> | 2011-01-25 11:44:32 +0800 |
commit | 1c33a6cf7a29a7a7b7addffbbae72707df1f8468 (patch) | |
tree | 2eddca983848b99261ec8b6a2c04a5264344d297 /drivers/video | |
parent | c0c763f0ff11673ce413ebf1169109e91ddc0cc9 (diff) |
ENGR00119661 MXC IPUv3 FB:Fix arbitary bpp issue
We used to force the framebuffer bpp to be default bpp
set by the user in the kernel boot up command line.
This patch fixes this issue. This patch also
gets TVE framebuffer bpp value from IPUv3 framebuffer.
Signed-off-by: Liu Ying <Ying.Liu@freescale.com>
Diffstat (limited to 'drivers/video')
-rw-r--r-- | drivers/video/mxc/mxc_ipuv3_fb.c | 1 | ||||
-rw-r--r-- | drivers/video/mxc/tve.c | 10 |
2 files changed, 5 insertions, 6 deletions
diff --git a/drivers/video/mxc/mxc_ipuv3_fb.c b/drivers/video/mxc/mxc_ipuv3_fb.c index 5905c86238bf..7e0b7a40ecea 100644 --- a/drivers/video/mxc/mxc_ipuv3_fb.c +++ b/drivers/video/mxc/mxc_ipuv3_fb.c @@ -606,7 +606,6 @@ static int mxcfb_check_var(struct fb_var_screeninfo *var, struct fb_info *info) if (var->yres_virtual < var->yres) var->yres_virtual = var->yres; - var->bits_per_pixel = mxc_fbi->default_bpp; if ((var->bits_per_pixel != 32) && (var->bits_per_pixel != 24) && (var->bits_per_pixel != 16) && (var->bits_per_pixel != 12) && (var->bits_per_pixel != 8)) diff --git a/drivers/video/mxc/tve.c b/drivers/video/mxc/tve.c index 1fcb2c0ca49a..e508e2d43e90 100644 --- a/drivers/video/mxc/tve.c +++ b/drivers/video/mxc/tve.c @@ -1328,22 +1328,22 @@ static int tve_probe(struct platform_device *pdev) /* is primary display? */ if (primary) { - struct fb_var_screeninfo var; const struct fb_videomode *mode; - memset(&var, 0, sizeof(var)); mode = fb_match_mode(&tve_fbi->var, &tve_modelist.list); if (mode) { pr_debug("TVE: fb mode found\n"); - fb_videomode_to_var(&var, mode); - var.yres_virtual = var.yres * 3; + fb_videomode_to_var(&tve_fbi->var, mode); + tve_fbi->var.yres_virtual = tve_fbi->var.yres * 3; } else { pr_warning("TVE: can not find video mode\n"); goto done; } acquire_console_sem(); tve_fbi->flags |= FBINFO_MISC_USEREVENT; - fb_set_var(tve_fbi, &var); + tve_fbi->var.activate |= FB_ACTIVATE_FORCE; + fb_set_var(tve_fbi, &tve_fbi->var); + tve_fbi->var.activate &= ~FB_ACTIVATE_FORCE; tve_fbi->flags &= ~FBINFO_MISC_USEREVENT; release_console_sem(); |