[<prev] [next>] [day] [month] [year] [list]
Message-ID: <20061201011802.GA29869@xi.wantstofly.org>
Date: Fri, 1 Dec 2006 02:18:02 +0100
From: Lennert Buytenhek <buytenh@...tstofly.org>
To: akpm@...l.org
Cc: linux@....linux.org.uk, linux-kernel@...r.kernel.org
Subject: [PATCH] amba-pl010: clear error flags on rx error
The pl010 primecell documentation specifies that an error indicated via
RSR should be cleared by a write to ECR. We didn't do this, which was
causing errors to be re-reported on every call to pl010_rx_chars().
Doing a write to ECR once we detect an error appears to prevent the
ep93xx console UART driver from going into a mode where it reports
"ttyAM0: X input overrun(s)" every couple of keystrokes.
Signed-off-by: Lennert Buytenhek <buytenh@...tstofly.org>
Index: linux-2.6.19-rc5/drivers/serial/amba-pl010.c
===================================================================
--- linux-2.6.19-rc5.orig/drivers/serial/amba-pl010.c
+++ linux-2.6.19-rc5/drivers/serial/amba-pl010.c
@@ -129,6 +129,8 @@ static void pl010_rx_chars(struct uart_p
*/
rsr = readb(port->membase + UART01x_RSR) | UART_DUMMY_RSR_RX;
if (unlikely(rsr & UART01x_RSR_ANY)) {
+ writel(0, port->membase + UART01x_ECR);
+
if (rsr & UART01x_RSR_BE) {
rsr &= ~(UART01x_RSR_FE | UART01x_RSR_PE);
port->icount.brk++;
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists