> Date: Tue, 28 Jun 2016 07:01:09 +0200 > From: Martin Pieuchot <m...@openbsd.org> > > On 17/06/16(Fri) 22:22, Mark Kettenis wrote: > > As reported earlier, umb(4) currently doesn't attach to devices that > > implement both NCM 1.0 and MBIM, such as the Sierra Wireless EM7345 > > that is found in some thinkpads. > > > > The diff below fixes this. It revamps the way we look up interface > > descriptors quite a bit. I removed the unused code for matching > > devices based on vendor and product ids. That code got a bit in my > > way. It should be possible to bring that back if needed. > > > > With this fix, the EM7345 attaches as: > > > > umb0 at uhub0 port 4 configuration 1 interface 0 "Sierra Wireless Inc. > > Sierra Wi > > reless EM7345 4G LTE" rev 2.00/17.29 addr 2 > > umb0: ignoring invalid segment size 1500 > > umb0: vers 1.0 > > umodem0 at uhub0 port 4 configuration 1 interface 2 "Sierra Wireless Inc. > > Sierra Wireless EM7345 4G LTE" rev 2.00/17.29 addr 2 > > umodem0: data interface 3, has no CM over data, has break > > umodem0: status change notification available > > ucom0 at umodem0 > > > > Note that it still attaches as umodem(4) as well. That is actually a > > good thing since it allows me to read out the GPS though that interface. > > > > I believe this code should work on all devices that are properly MBIM > > compliant. But of course vendors are notoriously sloppy in providing > > the right usb interface descriptors for their devices. So testing is > > welcome. If you run into issues, please provide lsusb -v output. > > Any test report? This looks good to me.
It's already in. No real fallout as far as I know, except for that report about some wierd umass interaction. But I don't think that's actually related to my changes.