From f85f63647920c137faabc6ae865d8bed6d9204b9 Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Fri, 2 Feb 2024 15:41:29 +0000 Subject: [PATCH 0130/1085] serial: sc16is7xx: Don't spin if no data received There are multiple causes of interrupts, errors being one, and only the receipt of data warrants continued polling. See: https://github.com/raspberrypi/linux/issues/2676 Signed-off-by: Phil Elwell --- drivers/tty/serial/sc16is7xx.c | 2 ++ 1 file changed, 2 insertions(+) --- a/drivers/tty/serial/sc16is7xx.c +++ b/drivers/tty/serial/sc16is7xx.c @@ -773,6 +773,8 @@ static bool sc16is7xx_port_irq(struct sc if (rxlen) sc16is7xx_handle_rx(port, rxlen, iir); + else + rc = false; break; /* CTSRTS interrupt comes only when CTS goes inactive */ case SC16IS7XX_IIR_CTSRTS_SRC: