diff options
-rw-r--r-- | drivers/serial/dz.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/serial/dz.c b/drivers/serial/dz.c index bbae5a220219..e1a2e413eb7d 100644 --- a/drivers/serial/dz.c +++ b/drivers/serial/dz.c @@ -685,7 +685,7 @@ static void dz_console_putchar(struct uart_port *uport, int ch) iob(); spin_unlock_irqrestore(&dport->port.lock, flags); - while (loops--) { + do { trdy = dz_in(dport, DZ_CSR); if (!(trdy & DZ_TRDY)) continue; @@ -696,7 +696,7 @@ static void dz_console_putchar(struct uart_port *uport, int ch) dz_out(dport, DZ_TCR, mask); iob(); udelay(2); - } + } while (loops--); if (loops) /* Cannot send otherwise. */ dz_out(dport, DZ_TDR, ch); |