Note to Greg: the first patch of this series is the fix I submitted earlier but it was not yet applied as the merge window was about to begin at that point (thus, using v2 to differentiate, the rest of the series have not been sent earlier). Improve LSR flag preservation. Not all devices preserve all LSR flags on read. Therefore, the non-permanent flags must be stored until consumed. 8250_port has handled this for some of the reads (but not all). Drivers not so much but it's unclear to me which of the devices actually clear flags on read so this series only does per driver fixes for DW. Ilpo Järvinen (6): serial: 8250: Store to lsr_save_flags after lsr read serial: 8250: Create serial_lsr_in() serial: 8250: Get preserved flags using serial_lsr_in() serial: 8250: Adjust misleading LSR related comment serial: 8250_dw: Use serial_lsr_in() in dw8250_handle_irq() serial: 8250_dw: Store LSR into lsr_saved_flags in dw8250_tx_wait_empty() drivers/tty/serial/8250/8250.h | 20 ++++++++++++++++++++ drivers/tty/serial/8250/8250_core.c | 3 +-- drivers/tty/serial/8250/8250_dw.c | 7 +++++-- drivers/tty/serial/8250/8250_port.c | 24 +++++++++++------------- 4 files changed, 37 insertions(+), 17 deletions(-) -- 2.30.2