Re: [PATCH v2] serial: 8250: clear a stuck RX-timeout interrupt with an empty FIFO
Ryan Wilbur <[email protected]> Tue, 21 Jul 2026 16:37:51 -0300
| Newsgroups | org.kernel.vger.linux-serial,org.kernel.vger.linux-kernel,org.kernel.vger.stable |
|---|---|
| Message-ID | <[email protected]> |
> I suspect Andy meant you should put this into hw specific file into a > hw-specific handle_irq. That could be setup in 8250_of.c, it already > seems to do something like that for some specific type. Thanks. I'll move the fix out of 8250_port.c into a PORT_LPC3220 handle_irq, wired up in 8250_of.c the same way fsl8250_handle_irq is, with the handler logic following dw8250_handle_irq's empty-FIFO RX-timeout read. > (8250_dw include check for LSR_BI bit and this one doesn't seem > include that bit, not sure if that's an oversight or intentional > difference [...]) The missing LSR_BI check was an oversight, I'll gate on !(LSR & (UART_LSR_DR | UART_LSR_BI)) to match dw. > So 3rd alternative would be to add e.g. UART_BUG_SPURIOUSRXTO but again > there are the per driver variations. [...] definitely cleaner approach > than copy-pasting this code around. I'll go with the per device handler over the UART_BUG_SPURIOUSRXTO callback because I can only test LPC32xx and I'm not comfortable touching drivers I can't explicitly test against.