On Fri, Jul 10, 2020 at 04:05:29PM +0000, Joakim Tjernlund wrote: > On Fri, 2020-07-10 at 14:41 +0200, Johan Hovold wrote: > > CAUTION: This email originated from outside of the organization. Do not click links or open attachments unless you recognize the sender and know the content is safe. > > > > > > On Fri, Jul 10, 2020 at 10:46:19AM +0000, Joakim Tjernlund wrote: > > > On Fri, 2020-07-10 at 12:34 +0200, Greg KH wrote: > > > > > > > > On Fri, Jul 10, 2020 at 11:35:18AM +0200, Joakim Tjernlund wrote: > > > > > > > tty_set_operations(acm_tty_driver, &acm_ops); > > > > > > > > > > - retval = tty_register_driver(acm_tty_driver); > > > > > + retval = usb_register(&acm_driver); > > > > > if (retval) { > > > > > put_tty_driver(acm_tty_driver); > > > > > return retval; > > > > > } > > > > > > > > > > - retval = usb_register(&acm_driver); > > > > > + retval = tty_register_driver(acm_tty_driver); > > > > > if (retval) { > > > > > - tty_unregister_driver(acm_tty_driver); > > > > > + usb_deregister(&acm_driver); > > > > > > > > Why are you switching these around? I think I know, but you don't > > > > really say... > > > > > > I wrote: > > > For initial termios to reach USB core, USB driver has to be > > > registered before TTY driver. > > > Found out that by trial and error. Isn't that clear enough? > > > > No, that makes no sense at all since USB core does not care about > > init_termios. > > But you install acm_ops into tty: > tty_set_operations(acm_tty_driver, &acm_ops); > Perhaps there is a call into acm_ops? No, not until the tty device has been registered by the USB driver. > Anyhow, does it not make sense to have usb before tty as tty uses usb? Nope, it's the other way round, and your change is therefore broken. > Can I ask this too: > what is the difference between acm_tty_install and acm_tty_open ? > Both seems to be called at open(2) > seems to me that install could be folded into open ? No, their purposes are distinct and they cannot be merged. Johan