summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLaurent Pinchart <laurent.pinchart@ideasonboard.com>2011-07-13 12:13:47 +0200
committerLaurent Pinchart <laurent.pinchart@ideasonboard.com>2011-08-19 08:22:44 +0200
commitd86d29df57adf9258f56939e59cdd70932845885 (patch)
treea8a4c65a7adeef40caf5df084c8078f4aab0c4d8
parent7963e21e50c8e712553347f900f0d0afaf5be2aa (diff)
downloadtalos-op-linux-d86d29df57adf9258f56939e59cdd70932845885.tar.gz
talos-op-linux-d86d29df57adf9258f56939e59cdd70932845885.zip
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 <laurent.pinchart@ideasonboard.com>
-rw-r--r--drivers/video/sh_mobile_meram.c2
1 files changed, 1 insertions, 1 deletions
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;
}
}
OpenPOWER on IntegriCloud