summaryrefslogtreecommitdiffstats
path: root/drivers/tty/serial/s5pv210.c
diff options
context:
space:
mode:
authorJongpill Lee <boyko.lee@samsung.com>2011-06-22 10:50:25 +0200
committerGreg Kroah-Hartman <gregkh@suse.de>2011-07-02 00:36:20 +0200
commit40eb0de5ba7e88e30349f336a38cf22016b8c07f (patch)
tree0507e5048934d50f864ef0ad44716f08bdf9fa7b /drivers/tty/serial/s5pv210.c
parenttty/serial: Fix XSCALE serial ports, e.g. ce4100 (diff)
downloadlinux-40eb0de5ba7e88e30349f336a38cf22016b8c07f.tar.xz
linux-40eb0de5ba7e88e30349f336a38cf22016b8c07f.zip
tty: s5pv210: Add delay loop on fifo reset function for UART
This patch addes delay loop on fifo reset function for UART. On high speed freq, it needs delay function when fifo reset. If not, system will hang by this uart reset problem when resuming from suspend mode. Signed-off-by: Jongpill Lee <boyko.lee@samsung.com> Signed-off-by: Jaecheol Lee <jc.lee@samsung.com> Signed-off-by: Kukjin Kim <kgene.kim@samsung.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Diffstat (limited to 'drivers/tty/serial/s5pv210.c')
-rw-r--r--drivers/tty/serial/s5pv210.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/drivers/tty/serial/s5pv210.c b/drivers/tty/serial/s5pv210.c
index fb2619f93d84..dce6cb3dbad1 100644
--- a/drivers/tty/serial/s5pv210.c
+++ b/drivers/tty/serial/s5pv210.c
@@ -18,6 +18,7 @@
#include <linux/init.h>
#include <linux/serial_core.h>
#include <linux/serial.h>
+#include <linux/delay.h>
#include <asm/irq.h>
#include <mach/hardware.h>
@@ -83,6 +84,9 @@ static int s5pv210_serial_resetport(struct uart_port *port,
wr_regl(port, S3C2410_UFCON, cfg->ufcon | S3C2410_UFCON_RESETBOTH);
wr_regl(port, S3C2410_UFCON, cfg->ufcon);
+ /* It is need to delay When reset FIFO register */
+ udelay(1);
+
return 0;
}