aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorInderpal Singh <inderpal.singh@linaro.org>2011-11-22 12:15:38 +0530
committerTushar Behera <tushar.behera@linaro.org>2012-07-20 14:29:40 +0530
commit22d53cfb090f67de4d6da4570396105c6d41a682 (patch)
tree436d3d9638645af6e8e7811d12bde6d21ee09373
parent148a920f183b0b8489e965dd7a9a4fa2438a63f8 (diff)
ARM: EXYNOS: Fix for suspend/resume hang
While resuming from suspend, the system hangs due to some spurious uart interrupts. This patch temporarily masks uart interrupts during reset_port to solve this problem. Signed-off-by: Inderpal Singh <inderpal.singh@linaro.org>
-rw-r--r--drivers/tty/serial/samsung.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/tty/serial/samsung.c b/drivers/tty/serial/samsung.c
index d8b0aee3563..88c27cf390a 100644
--- a/drivers/tty/serial/samsung.c
+++ b/drivers/tty/serial/samsung.c
@@ -988,6 +988,9 @@ static void s3c24xx_serial_resetport(struct uart_port *port,
wr_regl(port, S3C2410_UFCON, cfg->ufcon | S3C2410_UFCON_RESETBOTH);
wr_regl(port, S3C2410_UFCON, cfg->ufcon);
+ wr_regl(port, S3C64XX_UINTM, 0xf);
+ wr_regl(port, S3C64XX_UINTP, 0xf);
+
/* some delay is required after fifo reset */
udelay(1);
}