All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] serial: PL011: move interrupt clearing
@ 2012-03-21 19:15 ` Linus Walleij
  0 siblings, 0 replies; 20+ messages in thread
From: Linus Walleij @ 2012-03-21 19:15 UTC (permalink / raw)
  To: linux-serial, Greg Kroah-Hartman
  Cc: Russell King, Jong-Sung Kim, Linus Walleij, stable, Chanho Min,
	linux-arm-kernel, Shreshtha Kumar Sahu

Commit 360f748b204275229f8398cb2f9f53955db1503b
"serial: PL011: clear pending interrupts"
attempts to clear interrupts by writing to a
yet-unassigned memory address. This fixes the issue.

The breaking patch is marked for stable so should be
carried along with the other patch.

Cc: Shreshtha Kumar Sahu <shreshthakumar.sahu@stericsson.com>
Cc: Russell King <linux@arm.linux.org.uk>
Cc: stable <stable@vger.kernel.org>
Reported-by: Viresh Kumar <viresh.kumar@st.com>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
---
 drivers/tty/serial/amba-pl011.c |    8 ++++----
 1 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/drivers/tty/serial/amba-pl011.c b/drivers/tty/serial/amba-pl011.c
index 7e01399..4ed35c5 100644
--- a/drivers/tty/serial/amba-pl011.c
+++ b/drivers/tty/serial/amba-pl011.c
@@ -1930,10 +1930,6 @@ static int pl011_probe(struct amba_device *dev, const struct amba_id *id)
 		goto unmap;
 	}
 
-	/* Ensure interrupts from this UART are masked and cleared */
-	writew(0, uap->port.membase + UART011_IMSC);
-	writew(0xffff, uap->port.membase + UART011_ICR);
-
 	uap->vendor = vendor;
 	uap->lcrh_rx = vendor->lcrh_rx;
 	uap->lcrh_tx = vendor->lcrh_tx;
@@ -1951,6 +1947,10 @@ static int pl011_probe(struct amba_device *dev, const struct amba_id *id)
 	uap->port.line = i;
 	pl011_dma_probe(uap);
 
+	/* Ensure interrupts from this UART are masked and cleared */
+	writew(0, uap->port.membase + UART011_IMSC);
+	writew(0xffff, uap->port.membase + UART011_ICR);
+
 	snprintf(uap->type, sizeof(uap->type), "PL011 rev%u", amba_rev(dev));
 
 	amba_ports[i] = uap;
-- 
1.7.7.6

^ permalink raw reply related	[flat|nested] 20+ messages in thread

end of thread, other threads:[~2012-04-03 16:19 UTC | newest]

Thread overview: 20+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2012-03-21 19:15 [PATCH] serial: PL011: move interrupt clearing Linus Walleij
2012-03-21 19:15 ` Linus Walleij
2012-03-22  1:04 ` viresh kumar
2012-03-22  1:04   ` viresh kumar
2012-03-22  8:00   ` Linus Walleij
2012-03-22  8:00     ` Linus Walleij
2012-03-23  3:39     ` viresh kumar
2012-03-23  3:39       ` viresh kumar
2012-03-23  8:17       ` Linus Walleij
2012-03-23  8:17         ` Linus Walleij
2012-03-29 20:49 ` Grant Likely
2012-03-29 20:49   ` Grant Likely
2012-03-29 21:22   ` Linus Walleij
2012-03-29 21:22     ` Linus Walleij
2012-03-29 21:33   ` Greg Kroah-Hartman
2012-03-29 21:33     ` Greg Kroah-Hartman
2012-04-03 15:36     ` Paul Gortmaker
2012-04-03 15:36       ` Paul Gortmaker
2012-04-03 16:19       ` Greg Kroah-Hartman
2012-04-03 16:19         ` Greg Kroah-Hartman

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.