提交 276a1d43 编写于 作者: V Ville Syrjälä 提交者: Tomi Valkeinen

OMAP: DSS2: OMAPFB: Check var even if there isn't memory

If video memory hasn't been allocate have check_fb_var() still check
most of the settings, just skip the ones involving the size of the
memory region. Also skip the memory address calculations in
omapfb_setup_overlay() if there's no memory.
Signed-off-by: NVille Syrjälä <ville.syrjala@nokia.com>
Signed-off-by: NTomi Valkeinen <tomi.valkeinen@nokia.com>
上级 46d3524a
......@@ -668,9 +668,6 @@ int check_fb_var(struct fb_info *fbi, struct fb_var_screeninfo *var)
DBG("check_fb_var %d\n", ofbi->id);
if (ofbi->region.size == 0)
return 0;
r = fb_mode_to_dss_mode(var, &mode);
if (r) {
DBG("cannot convert var to omap dss mode\n");
......@@ -690,7 +687,8 @@ int check_fb_var(struct fb_info *fbi, struct fb_var_screeninfo *var)
if (check_fb_res_bounds(var))
return -EINVAL;
if (check_fb_size(ofbi, var))
/* When no memory is allocated ignore the size check */
if (ofbi->region.size != 0 && check_fb_size(ofbi, var))
return -EINVAL;
if (var->xres + var->xoffset > var->xres_virtual)
......@@ -894,8 +892,9 @@ static int omapfb_setup_overlay(struct fb_info *fbi, struct omap_overlay *ovl,
yres = var->yres;
}
omapfb_calc_addr(ofbi, var, fix, rotation,
&data_start_p, &data_start_v);
if (ofbi->region.size)
omapfb_calc_addr(ofbi, var, fix, rotation,
&data_start_p, &data_start_v);
r = fb_mode_to_dss_mode(var, &mode);
if (r) {
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册