diff options
| author | LorDClockaN <davor@losinj.com> | 2019-03-27 18:32:24 +0100 |
|---|---|---|
| committer | LorDClockaN <davor@losinj.com> | 2019-03-27 18:32:24 +0100 |
| commit | a8e12a51a8c22de9f1281b06f3cd85de5d0ab564 (patch) | |
| tree | 45230cd53d8092c346bd00810e3046fcea43666a /drivers/tty/serial/xilinx_uartps.c | |
| parent | 92857b007d911bfff7e65465694d28bf8fe96fc7 (diff) | |
| parent | b96e2451dc7dc8df5b5b330af0e96a8ae0e5a421 (diff) | |
Merge branch 'p9x' of https://github.com/DirtyUnicorns/android_kernel_google_bluecross.git into HEADHEADp9.0
Diffstat (limited to 'drivers/tty/serial/xilinx_uartps.c')
| -rw-r--r-- | drivers/tty/serial/xilinx_uartps.c | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/drivers/tty/serial/xilinx_uartps.c b/drivers/tty/serial/xilinx_uartps.c index 7333d64f68f2..ffb474c49f0f 100644 --- a/drivers/tty/serial/xilinx_uartps.c +++ b/drivers/tty/serial/xilinx_uartps.c @@ -362,7 +362,13 @@ static irqreturn_t cdns_uart_isr(int irq, void *dev_id) cdns_uart_handle_tx(dev_id); isrstatus &= ~CDNS_UART_IXR_TXEMPTY; } - if (isrstatus & CDNS_UART_IXR_RXMASK) + + /* + * Skip RX processing if RX is disabled as RXEMPTY will never be set + * as read bytes will not be removed from the FIFO. + */ + if (isrstatus & CDNS_UART_IXR_RXMASK && + !(readl(port->membase + CDNS_UART_CR) & CDNS_UART_CR_RX_DIS)) cdns_uart_handle_rx(dev_id, isrstatus); spin_unlock(&port->lock); |
