USB driver Zero Length Descriptor

Greetings All,

I am trying to connect an ICOM IC-R30 radio using the USB port.
The device driver fails to create /dev/ttyACM0 and issues the following messages:



 usb 1-1.2: new full-speed USB device number 8 using ehci-pci
 5383.598337] usb 1-1.2: not running at top speed; connect to a high speed hub
 5383.600050] usb 1-1.2: New USB device found, idVendor=0c26, idProduct=002b
 5383.600052] usb 1-1.2: New USB device strings: Mfr=1, Product=2, SerialNumber=3
 5383.600053] usb 1-1.2: Product: IC-R30
 5383.600054] usb 1-1.2: Manufacturer: Icom Inc.
 5383.600054] usb 1-1.2: SerialNumber: IC-R30 xxxxxxx
 5383.600719] cdc_acm 1-1.2:1.0: Zero length descriptor references
 5383.600726] cdc_acm: probe of 1-1.2:1.0 failed with error -22


lsusb output:


Bus 001 Device 008: ID 0c26:002b Prolific Technology Inc. 
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               2.00
  bDeviceClass            2 Communications
  bDeviceSubClass         0 
  bDeviceProtocol         0 
  bMaxPacketSize0        64
  idVendor           0x0c26 Prolific Technology Inc.
  idProduct          0x002b 
  bcdDevice            0.00
  iManufacturer           1 Icom Inc.
  iProduct                2 IC-R30
  iSerial                 3 IC-R30 xxxxxx
  bNumConfigurations      1
  Configuration Descriptor:
    bLength                 9
    bDescriptorType         2
    wTotalLength           48
    bNumInterfaces          2
    bConfigurationValue     1
    iConfiguration          0 
    bmAttributes         0xc0
      Self Powered
    MaxPower                0mA
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        0
      bAlternateSetting       0
      bNumEndpoints           1
      bInterfaceClass         2 Communications
      bInterfaceSubClass      2 Abstract (modem)
      bInterfaceProtocol      1 AT-commands (v.25ter)
      iInterface              0 
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x87  EP 7 IN
        bmAttributes            3
          Transfer Type            Interrupt
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0008  1x 8 bytes
        bInterval             200
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        1
      bAlternateSetting       0
      bNumEndpoints           2
      bInterfaceClass        10 CDC Data
      bInterfaceSubClass      0 
      bInterfaceProtocol      0 
      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               0
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x02  EP 2 OUT
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0040  1x 64 bytes
        bInterval               0
Device Qualifier (for other device speed):
  bLength                10
  bDescriptorType         6
  bcdUSB               2.00
  bDeviceClass            2 Communications
  bDeviceSubClass         0 
  bDeviceProtocol         0 
  bMaxPacketSize0         0
  bNumConfigurations     64
can't get debug descriptor: Resource temporarily unavailable
Device Status:     0x0001
  Self Powered

Any suggestions as to how to fix this are greatly appreciated.

Running Suse v15.1 on an Lenovo W530 laptop.

Thanx

Richard Rosa

Looks very similar to this: https://lore.kernel.org/patchwork/patch/839889/

…maybe file a bug against the kernel ?