tty: xilinx_uartps: Fix the ignore_status
authorShubhrajyoti Datta <shubhrajyoti.datta@xilinx.com>
Fri, 29 Jul 2022 11:47:45 +0000 (17:17 +0530)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 26 Oct 2022 10:35:05 +0000 (12:35 +0200)
[ Upstream commit b8a6c3b3d4654fba19881cc77da61eac29f57cae ]

Currently the ignore_status is not considered in the isr.
Add a check to add the ignore_status.

Fixes: 61ec9016988f ("tty/serial: add support for Xilinx PS UART")
Signed-off-by: Shubhrajyoti Datta <shubhrajyoti.datta@xilinx.com>
Link: https://lore.kernel.org/r/20220729114748.18332-5-shubhrajyoti.datta@xilinx.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/tty/serial/xilinx_uartps.c

index d5e2439..815e3e2 100644 (file)
@@ -375,6 +375,8 @@ static irqreturn_t cdns_uart_isr(int irq, void *dev_id)
                isrstatus &= ~CDNS_UART_IXR_TXEMPTY;
        }
 
+       isrstatus &= port->read_status_mask;
+       isrstatus &= ~port->ignore_status_mask;
        /*
         * Skip RX processing if RX is disabled as RXEMPTY will never be set
         * as read bytes will not be removed from the FIFO.