On Thu, 2018-12-13 at 11:18 +0100, Johan Hovold wrote: > On Thu, Dec 13, 2018 at 11:13:54AM +0100, Oliver Neukum wrote: > > On Do, 2018-12-13 at 10:43 +0100, Johan Hovold wrote: > > > On Thu, Dec 13, 2018 at 11:27:56AM +0800, macpaul.lin@xxxxxxxxxxxx wrote: > > > > From: Macpaul Lin <macpaul.lin@xxxxxxxxxxxx> > > > > > > > > + /* handle active handshake triggered by device */ > > > > + if (quirks == DISABLE_ECHO) > > > > + acm_tty_driver->init_termios.c_lflag &= ~(ECHO); > > > > > > You cannot change the driver init_termios like this as that will affect > > > all cdc-acm devices that are probed later. If this is at all needed, > > > this will have to be done at tty install time. > > > > Right. How do with decide on a sensible default anyway? > > I think the current defaults are sensible. They are based on > tty_std_termios, which has ECHO set, as for most (all?) tty drivers. > > Johan Well, the problem is that the phone device (preloader) will get "READYXX" even "no any download tool has ever been launched on PC". After the reset termios state change simply set EHCO enable, each time the phone device simple send out "READY" to PC after USB has been connected. The "READY" indication has no any "\0" character at the end of the command string, hence it will receive some dirty data (ex. "READYXX") back on RX path. Regards, Macpaul Lin