mbox series

[v2,0/6] LSR flag preservation improvements

Message ID 20220606131124.53394-1-ilpo.jarvinen@linux.intel.com
Headers show
Series LSR flag preservation improvements | expand

Message

Ilpo Järvinen June 6, 2022, 1:11 p.m. UTC
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(-)