From: Laurent Pinchart Date: Wed, 13 Jul 2011 10:13:47 +0000 (+0200) Subject: fbdev: sh_mobile_meram: Fix MExxCTL register save on runtime PM suspend X-Git-Url: http://drtracing.org/?a=commitdiff_plain;h=d86d29df57adf9258f56939e59cdd70932845885;p=deliverable%2Flinux.git fbdev: sh_mobile_meram: Fix MExxCTL register save on runtime PM suspend To reset the ICB on resume the MExxCTL register needs to be OR'ed with MExxCTL_WBF | MExxCTL_WF | MExxCTL_RF, no set to that value. Fix this. This fixes corruption at the bottom of the display when resuming from runtime PM. Signed-off-by: Laurent Pinchart --- diff --git a/drivers/video/sh_mobile_meram.c b/drivers/video/sh_mobile_meram.c index 25a7118a40f8..7ba6dce459b2 100644 --- a/drivers/video/sh_mobile_meram.c +++ b/drivers/video/sh_mobile_meram.c @@ -549,7 +549,7 @@ static int sh_mobile_meram_runtime_suspend(struct device *dev) meram_read_icb(priv->base, j, icb_regs[k]); /* Reset ICB on resume */ if (icb_regs[k] == MExxCTL) - priv->icb_saved_regs[j * ICB_REGS_SIZE + k] = + priv->icb_saved_regs[j * ICB_REGS_SIZE + k] |= MExxCTL_WBF | MExxCTL_WF | MExxCTL_RF; } }