diff options
Diffstat (limited to 'drivers/serial')
-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) | |||
685 | iob(); | 685 | iob(); |
686 | spin_unlock_irqrestore(&dport->port.lock, flags); | 686 | spin_unlock_irqrestore(&dport->port.lock, flags); |
687 | 687 | ||
688 | while (loops--) { | 688 | do { |
689 | trdy = dz_in(dport, DZ_CSR); | 689 | trdy = dz_in(dport, DZ_CSR); |
690 | if (!(trdy & DZ_TRDY)) | 690 | if (!(trdy & DZ_TRDY)) |
691 | continue; | 691 | continue; |
@@ -696,7 +696,7 @@ static void dz_console_putchar(struct uart_port *uport, int ch) | |||
696 | dz_out(dport, DZ_TCR, mask); | 696 | dz_out(dport, DZ_TCR, mask); |
697 | iob(); | 697 | iob(); |
698 | udelay(2); | 698 | udelay(2); |
699 | } | 699 | } while (loops--); |
700 | 700 | ||
701 | if (loops) /* Cannot send otherwise. */ | 701 | if (loops) /* Cannot send otherwise. */ |
702 | dz_out(dport, DZ_TDR, ch); | 702 | dz_out(dport, DZ_TDR, ch); |