|
@@ -83,6 +83,9 @@ static unsigned int skip_txen_test; /* force skip of txen test at init time */
|
|
|
|
|
|
#define PASS_LIMIT 256
|
|
#define PASS_LIMIT 256
|
|
|
|
|
|
|
|
+#define BOTH_EMPTY (UART_LSR_TEMT | UART_LSR_THRE)
|
|
|
|
+
|
|
|
|
+
|
|
/*
|
|
/*
|
|
* We default to IRQ0 for the "no irq" hack. Some
|
|
* We default to IRQ0 for the "no irq" hack. Some
|
|
* machine types want others as well - they're free
|
|
* machine types want others as well - they're free
|
|
@@ -1792,7 +1795,7 @@ static unsigned int serial8250_tx_empty(struct uart_port *port)
|
|
up->lsr_saved_flags |= lsr & LSR_SAVE_FLAGS;
|
|
up->lsr_saved_flags |= lsr & LSR_SAVE_FLAGS;
|
|
spin_unlock_irqrestore(&up->port.lock, flags);
|
|
spin_unlock_irqrestore(&up->port.lock, flags);
|
|
|
|
|
|
- return lsr & UART_LSR_TEMT ? TIOCSER_TEMT : 0;
|
|
|
|
|
|
+ return (lsr & BOTH_EMPTY) == BOTH_EMPTY ? TIOCSER_TEMT : 0;
|
|
}
|
|
}
|
|
|
|
|
|
static unsigned int serial8250_get_mctrl(struct uart_port *port)
|
|
static unsigned int serial8250_get_mctrl(struct uart_port *port)
|
|
@@ -1850,8 +1853,6 @@ static void serial8250_break_ctl(struct uart_port *port, int break_state)
|
|
spin_unlock_irqrestore(&up->port.lock, flags);
|
|
spin_unlock_irqrestore(&up->port.lock, flags);
|
|
}
|
|
}
|
|
|
|
|
|
-#define BOTH_EMPTY (UART_LSR_TEMT | UART_LSR_THRE)
|
|
|
|
-
|
|
|
|
/*
|
|
/*
|
|
* Wait for transmitter & holding register to empty
|
|
* Wait for transmitter & holding register to empty
|
|
*/
|
|
*/
|