Skip to contentSkip to conversation

USB: qcaux: Add Motorola modem UARTs

DISCUSSION Johan Hovold 1 participant 1 message Dec 13, 2018 USB

lore
Share & tools
lore
#0 lore raw

Hi Tony,

Sorry for the late reply.

Quoted 11 lines · Tony Lindgren

Hi,

Quoted 3 lines · Johan Hovold

On Wed, Dec 05, 2018 at 05:54:07PM -0800, Tony Lindgren wrote:

Could you post the output for the two devices you have in "modem" mode?

Yes correct lsusb -v output below with five UARTs with ff/ff/ff and two QMI ports that are already handled with an earlier commit 4071898bf0f4 ("net: qmi_wwan: Add USB IDs for MDM6600 modem on Motorola Droid 4").

Isn't it four QMI ports even (interfaces 5 through 8)?

Quoted 7 lines
Quoted 1 line

How do switch modes by the way?

The flash mode gets enabled with the control GPIOs. I just did a quick test patch for phy-mapphone-mdm6600 using module param for that. Then additionally the modem USB can be multiplexed to the PC by configuring mode in phy-cpcap-usb but I don't have a patch for that.

Ah, ok.

Quoted 30 lines

8< -----------------------
Bus 001 Device 002: ID 22b8:2a70
Device Descriptor:
bLength 18
bDescriptorType 1
bcdUSB 2.00

  bDeviceClass            0 
  bDeviceSubClass         0 
  bDeviceProtocol         0 
  bMaxPacketSize0        64
  idVendor           0x22b8 
  idProduct          0x2a70 
  bcdDevice            0.00
  iManufacturer           1 Motorola, Incorporated
  iProduct                2 Flash MZ600
  iSerial                 0 
  bNumConfigurations      1

Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 4
bAlternateSetting 0
bNumEndpoints 3
bInterfaceClass 255
bInterfaceSubClass 255
bInterfaceProtocol 255
iInterface 0
Endpoint Descriptor:
bLength 7

Quoted 8 lines

bDescriptorType 5
bEndpointAddress 0x85 EP 5 IN
bmAttributes 3
Transfer Type Interrupt
Synch Type None
Usage Type Data
wMaxPacketSize 0x0040 1x 64 bytes
bInterval 5

Since the modem (AT) port here has an interrupt endpoint, you should add these device ids to the option driver which can handle that.

As the comment in qcaux suggests, that driver is intended for the diag port of some old devices where the modem port was handled by cdc-acm.

Quoted 12 lines

Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x86 EP 6 IN
bmAttributes 2
Transfer Type Bulk
Synch Type None
Usage Type Data
wMaxPacketSize 0x0040 1x 64 bytes
bInterval 32
Endpoint Descriptor:
bLength 7

Quoted 8 lines

bDescriptorType 5
bEndpointAddress 0x05 EP 5 OUT
bmAttributes 2
Transfer Type Bulk
Synch Type None
Usage Type Data
wMaxPacketSize 0x0040 1x 64 bytes
bInterval 32

Also, if possible please include the more compact output of usb-devices (or /sys/kernel/debug/usb/devices) for the devices you have access to in the commit message.

Thanks,
Johan