diff options
-rw-r--r-- | arch/arm/mach-ux500/board-mop500-mcde.c | 4 | ||||
-rw-r--r-- | arch/arm/mach-ux500/board-u5500-mcde.c | 4 | ||||
-rw-r--r-- | drivers/video/mcde/display-av8100.c | 1 | ||||
-rw-r--r-- | drivers/video/mcde/display-generic_dsi.c | 1 |
4 files changed, 6 insertions, 4 deletions
diff --git a/arch/arm/mach-ux500/board-mop500-mcde.c b/arch/arm/mach-ux500/board-mop500-mcde.c index 42cec2c88a6..d16c715ed86 100644 --- a/arch/arm/mach-ux500/board-mop500-mcde.c +++ b/arch/arm/mach-ux500/board-mop500-mcde.c @@ -549,6 +549,7 @@ static int framebuffer_postregistered_callback(struct notifier_block *nb, struct mcde_overlay *ovly = mfb->ovlys[i]; struct mcde_overlay_info ovly_info; struct mcde_fb *mfb = to_mcde_fb(info); + int num_buffers; memset(&ovly_info, 0, sizeof(ovly_info)); ovly_info.paddr = fix.smem_start + fix.line_length * var.yoffset; @@ -562,7 +563,8 @@ static int framebuffer_postregistered_callback(struct notifier_block *nb, ovly_info.dirty.w = var.xres; ovly_info.dirty.h = var.yres; (void) mcde_dss_apply_overlay(ovly, &ovly_info); - ret = mcde_dss_update_overlay(ovly); + num_buffers = var.yres_virtual / var.yres; + ret = mcde_dss_update_overlay(ovly, num_buffers == 3); if (ret) break; } diff --git a/arch/arm/mach-ux500/board-u5500-mcde.c b/arch/arm/mach-ux500/board-u5500-mcde.c index 49b6c53d98e..34c29398c72 100644 --- a/arch/arm/mach-ux500/board-u5500-mcde.c +++ b/arch/arm/mach-ux500/board-u5500-mcde.c @@ -318,6 +318,7 @@ static int framebuffer_postregistered_callback(struct notifier_block *nb, struct mcde_overlay *ovly = mfb->ovlys[i]; struct mcde_overlay_info ovly_info; struct mcde_fb *mfb = to_mcde_fb(info); + int num_buffers; memset(&ovly_info, 0, sizeof(ovly_info)); ovly_info.paddr = fix.smem_start + fix.line_length * var.yoffset; @@ -331,7 +332,8 @@ static int framebuffer_postregistered_callback(struct notifier_block *nb, ovly_info.dirty.w = var.xres; ovly_info.dirty.h = var.yres; (void) mcde_dss_apply_overlay(ovly, &ovly_info); - ret = mcde_dss_update_overlay(ovly); + num_buffers = var.yres_virtual / var.yres; + ret = mcde_dss_update_overlay(ovly, num_buffers == 3); if (ret) break; } diff --git a/drivers/video/mcde/display-av8100.c b/drivers/video/mcde/display-av8100.c index 99070b6071f..688a4d17688 100644 --- a/drivers/video/mcde/display-av8100.c +++ b/drivers/video/mcde/display-av8100.c @@ -1428,7 +1428,6 @@ static int hdmi_resume(struct mcde_display_device *ddev) dev_warn(&ddev->dev, "%s:Failed to resume display\n" , __func__); - ddev->update(ddev, 0); return ret; } diff --git a/drivers/video/mcde/display-generic_dsi.c b/drivers/video/mcde/display-generic_dsi.c index b2d63ba06f7..64ed3d6daa9 100644 --- a/drivers/video/mcde/display-generic_dsi.c +++ b/drivers/video/mcde/display-generic_dsi.c @@ -246,7 +246,6 @@ static int generic_resume(struct mcde_display_device *ddev) , __func__); ddev->set_synchronized_update(ddev, ddev->get_synchronized_update(ddev)); - ddev->update(ddev, false); return ret; } |