diff options
author | Laxman Dewangan <ldewangan@nvidia.com> | 2010-09-13 17:42:12 +0530 |
---|---|---|
committer | Bharat Nihalani <bnihalani@nvidia.com> | 2010-09-13 20:44:31 -0700 |
commit | 2dfdf8f1827ea26560b5295164d59590dabcff20 (patch) | |
tree | 3a14a86cc1f15fc7bd03a0171b9dfdc5233e1bfd | |
parent | 6a3d70663c22deb829b09c4a9142d9f3ffd6db7a (diff) |
[arm/tegra] serial: Removing wait loop for tx empty
When uart_close() or uart_suspend() calls the tegra_uart_suspend()
the drivers waits in tight loop for tx to be empty. This wait is
not required because serial_core driver have already waited for the
tx fifo to empty with proper timeout before calling these function.
bug 730612
(cherry picked from commit 13387c532dfb35dc672b290aec8b7a4db49730d6)
(cherry picked from commit ddd896c933e3f8d5fb28948ad957ec12b3d881cd)
Change-Id: Ie898ad0a134684844bf80ae00a1c8dd4b02a605a
Reviewed-on: http://git-master/r/6372
Reviewed-by: Laxman Dewangan <ldewangan@nvidia.com>
Tested-by: Laxman Dewangan <ldewangan@nvidia.com>
Reviewed-by: Harry Hong <hhong@nvidia.com>
Tested-by: Harry Hong <hhong@nvidia.com>
Reviewed-by: Bharat Nihalani <bnihalani@nvidia.com>
-rwxr-xr-x | drivers/serial/tegra_hsuart.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/serial/tegra_hsuart.c b/drivers/serial/tegra_hsuart.c index f179d098cdc4..353a43bc3906 100755 --- a/drivers/serial/tegra_hsuart.c +++ b/drivers/serial/tegra_hsuart.c @@ -668,8 +668,8 @@ static void tegra_uart_hw_deinit(struct tegra_uart_port *t) /* Disable interrupts */ uart_writeb(t, 0, UART_IER); - while ((uart_readb(t, UART_LSR) & UART_LSR_TEMT) != UART_LSR_TEMT); - udelay(2000); + /* TBD: why this delay is needed */ + udelay(200); /* Reset the Rx and Tx FIFOs */ fcr = t->fcr_shadow; |