Unlike other drivers cp210x have been retrieving the current terminal settings from the device on open and reflecting those in termios. Due to how set_termios() was implemented this saved a few control requests on open but has instead caused problems like broken flow control and has required adding workarounds for swapped line-control in cp2108 and line-speed initialisation on cp2104. This unusual implementation also complicates adding new features for no good reason. Rip out the corresponding code and the above mentioned workarounds and instead initialise the terminal settings unconditionally on open. Johan Johan Hovold (6): USB: serial: cp210x: return early on unchanged termios USB: serial: cp210x: clean up line-control handling USB: serial: cp210x: set terminal settings on open USB: serial: cp210x: drop flow-control debugging USB: serial: cp210x: refactor flow-control handling USB: serial: cp210x: clean up dts_rts drivers/usb/serial/cp210x.c | 499 ++++++++---------------------------- 1 file changed, 104 insertions(+), 395 deletions(-) -- 2.26.2