From: Carlos Sanchez Date: Sun, 30 Oct 2005 23:02:53 +0000 (-0800) Subject: [PATCH] Added a Receive_Abort to the Marvell serial driver X-Git-Tag: v2.6.15-rc1~59^2~15^2~65 X-Git-Url: https://err.no/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=f7232056bff5fe2d3bfeab35252a66ebaeb5bbde;p=linux-2.6 [PATCH] Added a Receive_Abort to the Marvell serial driver Added a Receive_Abort to the Marvell serial driver Fix occasional input overrun errors on Marvell serial driver - If the Marvell serial driver is repeatedly started and then stopped it will occasionally report an input overrun error when started. - Added a Receive_Abort to the Marvell serial driver to abort previously received receive errors when re-starting the receive Acked-by: Mark A. Greer Signed-off-by: Carlos Sanchez Cc: Russell King Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds --- diff --git a/drivers/serial/mpsc.c b/drivers/serial/mpsc.c index efe79b1fd4..aec83f577c 100644 --- a/drivers/serial/mpsc.c +++ b/drivers/serial/mpsc.c @@ -1100,6 +1100,8 @@ mpsc_start_rx(struct mpsc_port_info *pi) { pr_debug("mpsc_start_rx[%d]: Starting...\n", pi->port.line); + /* Issue a Receive Abort to clear any receive errors */ + writel(MPSC_CHR_2_RA, pi->mpsc_base + MPSC_CHR_2); if (pi->rcv_data) { mpsc_enter_hunt(pi); mpsc_sdma_cmd(pi, SDMA_SDCM_ERD);