On Wed, Dec 05, 2018 at 05:54:07PM -0800, Tony Lindgren wrote: > Hi, > > * Johan Hovold <johan@xxxxxxxxxx> [181205 06:17]: > > On Sun, Dec 02, 2018 at 05:34:24PM -0800, Tony Lindgren wrote: > > > On Motorola Mapphone devices such as Droid 4 there are five USB ports > > > that do not use the same layout as Gobi 1K/2K/etc devices listed in > > > qcserial.c. So we should use qcaux.c or option.c as noted by > > > Dan Williams <dcbw@xxxxxxxxxx>. > > > > > > The ff/ff/ff interfaces seem to always be UARTs on Motorola devices. > > > And we should not add interfaces with 0x0a class (CDC Data) as they > > > are part of a multi-interface function like for example interface > > > 0x22b8:0x4281 as noted by Bjørn Mork <bjorn@xxxxxxx>. > > > > Can you post the output of usb-devices (or lsusb -v) for these three > > devices (PIDs)? > > Here's two out of three for you to look at. They're all listed in > drivers/usb/serial/mdm6600.c in at least the Motorola Mapphone > Android kernels, see for example the LineageOS kernel at [0] if > you want to look at the USB serial driver. > > I don't have a device with 9600 with 0x2e0a id. > > [0] https://github.com/LineageOS/android_kernel_motorola_omap4-common/blob/cm-14.1/drivers/usb/serial/mdm6600.c Thanks for the pointer. > > 8< --------------------- > Bus 001 Device 002: ID 22b8:4281 > Device Descriptor: > bLength 18 > bDescriptorType 1 > bcdUSB 2.00 > bDeviceClass 0 > bDeviceSubClass 0 > bDeviceProtocol 0 > bMaxPacketSize0 64 > idVendor 0x22b8 > idProduct 0x4281 This PID is not included in your patch however. > bcdDevice 0.00 > iManufacturer 1 Motorola, Incorporated > iProduct 2 Flash MZ600 > iSerial 0 > bNumConfigurations 1 > Configuration Descriptor: > bLength 9 > bDescriptorType 2 > wTotalLength 0x0020 > bNumInterfaces 1 > bConfigurationValue 1 > iConfiguration 3 Motorola Configuration > bmAttributes 0xe0 > Self Powered > Remote Wakeup > MaxPower 500mA > Interface Descriptor: > bLength 9 > bDescriptorType 4 > bInterfaceNumber 0 > bAlternateSetting 0 > bNumEndpoints 2 > bInterfaceClass 10 > bInterfaceSubClass 0 > bInterfaceProtocol 252 And wouldn't match on ff/ff/ff in any case. > iInterface 5 Motorola Flash > Endpoint Descriptor: > bLength 7 > bDescriptorType 5 > bEndpointAddress 0x81 EP 1 IN > bmAttributes 2 > Transfer Type Bulk > Synch Type None > Usage Type Data > wMaxPacketSize 0x0040 1x 64 bytes > bInterval 0 > Endpoint Descriptor: > bLength 7 > bDescriptorType 5 > bEndpointAddress 0x01 EP 1 OUT > bmAttributes 2 > Transfer Type Bulk > Synch Type None > Usage Type Data > wMaxPacketSize 0x0040 1x 64 bytes > bInterval 0 > Device Status: 0x0000 > (Bus Powered) > > Bus 003 Device 109: ID 22b8:900e > Device Descriptor: > bLength 18 > bDescriptorType 1 > bcdUSB 2.00 > bDeviceClass 0 > bDeviceSubClass 0 > bDeviceProtocol 0 > bMaxPacketSize0 64 > idVendor 0x22b8 > idProduct 0x900e > bcdDevice 0.00 > iManufacturer 1 Motorola, Incorporated > iProduct 2 Flash MZ600 > iSerial 0 > bNumConfigurations 1 > Configuration Descriptor: > bLength 9 > bDescriptorType 2 > wTotalLength 0x0020 > bNumInterfaces 1 > bConfigurationValue 1 > iConfiguration 3 Motorola Configuration > bmAttributes 0xe0 > Self Powered > Remote Wakeup > MaxPower 500mA > Interface Descriptor: > bLength 9 > bDescriptorType 4 > bInterfaceNumber 0 > bAlternateSetting 0 > bNumEndpoints 2 > bInterfaceClass 255 > bInterfaceSubClass 255 > bInterfaceProtocol 255 > iInterface 0 > Endpoint Descriptor: > bLength 7 > bDescriptorType 5 > bEndpointAddress 0x81 EP 1 IN > bmAttributes 2 > Transfer Type Bulk > Synch Type None > Usage Type Data > wMaxPacketSize 0x0040 1x 64 bytes > bInterval 32 > Endpoint Descriptor: > bLength 7 > bDescriptorType 5 > bEndpointAddress 0x01 EP 1 OUT > bmAttributes 2 > Transfer Type Bulk > Synch Type None > Usage Type Data > wMaxPacketSize 0x0040 1x 64 bytes > bInterval 32 > Device Status: 0x0000 > (Bus Powered) And this doesn't look like a modem with five (?) interfaces, but I guess it's in "flash" mode? Could you post the output for the two devices you have in "modem" mode? How do switch modes by the way? Thanks, Johan