Page MenuHomeFreeBSD

D29130.id85403.diff
No OneTemporary

D29130.id85403.diff

Index: sys/dev/uart/uart_dev_ns8250.c
===================================================================
--- sys/dev/uart/uart_dev_ns8250.c
+++ sys/dev/uart/uart_dev_ns8250.c
@@ -738,6 +738,7 @@
} else {
if (iir & IIR_TXRDY) {
ipend |= SER_INT_TXIDLE;
+ ns8250->ier &= ~IER_ETXRDY;
uart_setreg(bas, REG_IER, ns8250->ier);
uart_barrier(bas);
} else
@@ -1035,7 +1036,9 @@
uart_setreg(bas, REG_DATA, sc->sc_txbuf[i]);
uart_barrier(bas);
}
- uart_setreg(bas, REG_IER, ns8250->ier | IER_ETXRDY);
+ if (!broken_txfifo)
+ ns8250->ier |= IER_ETXRDY;
+ uart_setreg(bas, REG_IER, ns8250->ier);
uart_barrier(bas);
if (broken_txfifo)
ns8250_drain(bas, UART_DRAIN_TRANSMITTER);

File Metadata

Mime Type
text/plain
Expires
Thu, Dec 25, 6:54 PM (5 h, 19 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
27257190
Default Alt Text
D29130.id85403.diff (704 B)

Event Timeline