aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorCarlos Sanchez <csanchez@windy.az.mvista.com>2005-10-30 18:02:53 -0500
committerLinus Torvalds <torvalds@g5.osdl.org>2005-10-30 20:37:25 -0500
commitf7232056bff5fe2d3bfeab35252a66ebaeb5bbde (patch)
treea3dd4fd813ca169e9364a1d751c6236c3d2715c4
parent6ea05db06f32adac65b4c4e95ef998839149de12 (diff)
[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 <mgreer@mvista.com> Signed-off-by: Carlos Sanchez <csanchez@mvista.com> Cc: Russell King <rmk@arm.linux.org.uk> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-rw-r--r--drivers/serial/mpsc.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/serial/mpsc.c b/drivers/serial/mpsc.c
index efe79b1fd431..aec83f577ce6 100644
--- a/drivers/serial/mpsc.c
+++ b/drivers/serial/mpsc.c
@@ -1100,6 +1100,8 @@ mpsc_start_rx(struct mpsc_port_info *pi)
1100{ 1100{
1101 pr_debug("mpsc_start_rx[%d]: Starting...\n", pi->port.line); 1101 pr_debug("mpsc_start_rx[%d]: Starting...\n", pi->port.line);
1102 1102
1103 /* Issue a Receive Abort to clear any receive errors */
1104 writel(MPSC_CHR_2_RA, pi->mpsc_base + MPSC_CHR_2);
1103 if (pi->rcv_data) { 1105 if (pi->rcv_data) {
1104 mpsc_enter_hunt(pi); 1106 mpsc_enter_hunt(pi);
1105 mpsc_sdma_cmd(pi, SDMA_SDCM_ERD); 1107 mpsc_sdma_cmd(pi, SDMA_SDCM_ERD);