aboutsummaryrefslogtreecommitdiff
path: root/drivers/tty/serial/imx.c
diff options
context:
space:
mode:
authorNicolas Pitre <nicolas.pitre@linaro.org>2011-05-02 22:31:13 -0400
committerNicolas Pitre <nicolas.pitre@linaro.org>2011-05-02 22:31:13 -0400
commit60e677bfffd835ef56d8a2f25f9a2f8eaa8f2b7c (patch)
treef08c3de386ee6289abbb1a7180c06f6c7c67a2c7 /drivers/tty/serial/imx.c
parentfbd46dc5333e0bc45719a7ed38d3411aef7dcd61 (diff)
parent60584ef99395a89d136399bbc127289a4aa29dc7 (diff)
Merge commit 'v2.6.38.5' into linaro-2.6.38
Diffstat (limited to 'drivers/tty/serial/imx.c')
-rw-r--r--drivers/tty/serial/imx.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/tty/serial/imx.c b/drivers/tty/serial/imx.c
index dfcf4b1878a..0d66751c0cb 100644
--- a/drivers/tty/serial/imx.c
+++ b/drivers/tty/serial/imx.c
@@ -382,12 +382,13 @@ static void imx_start_tx(struct uart_port *port)
static irqreturn_t imx_rtsint(int irq, void *dev_id)
{
struct imx_port *sport = dev_id;
- unsigned int val = readl(sport->port.membase + USR1) & USR1_RTSS;
+ unsigned int val;
unsigned long flags;
spin_lock_irqsave(&sport->port.lock, flags);
writel(USR1_RTSD, sport->port.membase + USR1);
+ val = readl(sport->port.membase + USR1) & USR1_RTSS;
uart_handle_cts_change(&sport->port, !!val);
wake_up_interruptible(&sport->port.state->port.delta_msr_wait);