Messages in this thread Patch in this message | | | From | Alan Cox <> | Subject | [PATCH 10/27] Blackfin Serial Driver: Fix bug - Don't call tx_stop in tx_transfer. | Date | Fri, 10 Oct 2008 11:49:06 +0100 |
| |
From: Sonic Zhang <sonic.zhang@analog.com>
Disable irq and return immediately.
Signed-off-by: Sonic Zhang <sonic.zhang@analog.com> Signed-off-by: Bryan Wu <cooloney@kernel.org> Signed-off-by: Alan Cox <alan@redhat.com> ---
drivers/serial/bfin_5xx.c | 6 +++++- 1 files changed, 5 insertions(+), 1 deletions(-)
diff --git a/drivers/serial/bfin_5xx.c b/drivers/serial/bfin_5xx.c index 8d2d757..5e20f50 100644 --- a/drivers/serial/bfin_5xx.c +++ b/drivers/serial/bfin_5xx.c @@ -301,7 +301,11 @@ static void bfin_serial_tx_chars(struct bfin_serial_port *uart) bfin_serial_mctrl_check(uart); if (uart_circ_empty(xmit) || uart_tx_stopped(&uart->port)) { - bfin_serial_stop_tx(&uart->port); +#ifdef CONFIG_BF54x + /* Clear TFI bit */ + UART_PUT_LSR(uart, TFI); +#endif + UART_CLEAR_IER(uart, ETBEI); return; }
| |