Module Name: src Committed By: jmcneill Date: Mon Jul 31 23:53:25 UTC 2017
Modified Files: src/sys/dev/ic: com.c Log Message: Broadcom AUX UART doesn't seem to set LSR RXRDY bit when data is available in the RX FIFO. To generate a diff of this commit: cvs rdiff -u -r1.340 -r1.341 src/sys/dev/ic/com.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
Modified files: Index: src/sys/dev/ic/com.c diff -u src/sys/dev/ic/com.c:1.340 src/sys/dev/ic/com.c:1.341 --- src/sys/dev/ic/com.c:1.340 Mon Jul 31 09:25:14 2017 +++ src/sys/dev/ic/com.c Mon Jul 31 23:53:25 2017 @@ -1,4 +1,4 @@ -/* $NetBSD: com.c,v 1.340 2017/07/31 09:25:14 jmcneill Exp $ */ +/* $NetBSD: com.c,v 1.341 2017/07/31 23:53:25 jmcneill Exp $ */ /*- * Copyright (c) 1998, 1999, 2004, 2008 The NetBSD Foundation, Inc. @@ -66,7 +66,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: com.c,v 1.340 2017/07/31 09:25:14 jmcneill Exp $"); +__KERNEL_RCSID(0, "$NetBSD: com.c,v 1.341 2017/07/31 23:53:25 jmcneill Exp $"); #include "opt_com.h" #include "opt_ddb.h" @@ -2116,6 +2116,9 @@ again: do { #endif } + if (sc->sc_type == COM_TYPE_BCMAUXUART && ISSET(iir, IIR_RXRDY)) + lsr |= LSR_RXRDY; + if (ISSET(lsr, LSR_RCV_MASK) && !ISSET(sc->sc_rx_flags, RX_IBUF_OVERFLOWED)) { while (cc > 0) {