commit: http://blackfin.uclinux.org/git/?p=linux-kernel;a=commitdiff;h=eb32d93b01c6bb59fa217187d2e0bac66a13d08e
branch: http://blackfin.uclinux.org/git/?p=linux-kernel;a=shortlog;h=refs/heads/trunk

Signed-off-by: Sonic Zhang <[email protected]>
Signed-off-by: Bob Liu <[email protected]>
---
 drivers/tty/serial/bfin_uart.c |    9 ++++++++-
 1 files changed, 8 insertions(+), 1 deletions(-)

diff --git a/drivers/tty/serial/bfin_uart.c b/drivers/tty/serial/bfin_uart.c
index 4995e12..a247b3c 100644
--- a/drivers/tty/serial/bfin_uart.c
+++ b/drivers/tty/serial/bfin_uart.c
@@ -358,7 +358,14 @@ static void bfin_serial_tx_chars(struct bfin_serial_port *uart)
 		uart->port.x_char = 0;
 	}
 
-	while ((UART_GET_LSR(uart) & THRE) && xmit->tail != xmit->head) {
+/*	UART Poll mode transfer workaround for bf609.
+ *	Should be removed after SEC controller is working.
+ *	while ((UART_GET_LSR(uart) & THRE) && xmit->tail != xmit->head) {
+ */
+	while (xmit->tail != xmit->head) {
+		while (!(UART_GET_LSR(uart) & THRE))
+			cpu_relax();
+
 		UART_PUT_CHAR(uart, xmit->buf[xmit->tail]);
 		xmit->tail = (xmit->tail + 1) & (UART_XMIT_SIZE - 1);
 		uart->port.icount.tx++;
_______________________________________________
Linux-kernel-commits mailing list
[email protected]
https://blackfin.uclinux.org/mailman/listinfo/linux-kernel-commits

Reply via email to