usb/sound module fails to configure USB Audio Interface

Bug #1873712 reported by Karl Hornlund
12
This bug affects 2 people
Affects Status Importance Assigned to Milestone
linux-signed-hwe (Ubuntu)
Confirmed
Undecided
Unassigned

Bug Description

When I connect my PreSonus USB AudioBox 96 to my Ubuntu 18.04LTS desktop via USB2.0 port, dmesg shows the following errors in a loop:
```
[ 8764.468004] usb 1-11: new high-speed USB device number 61 using xhci_hcd
[ 8764.516953] usb 1-11: New USB device found, idVendor=194f, idProduct=0303, bcdDevice= 1.12
[ 8764.516955] usb 1-11: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[ 8764.516957] usb 1-11: Product: AudioBox USB 96
[ 8764.516958] usb 1-11: Manufacturer: PreSonus
[ 8764.516959] usb 1-11: SerialNumber: 000000000000
[ 8769.723951] usb 1-11: 1:1: cannot set freq 96000 (v2/v3): err -110
[ 8774.843735] usb 1-11: parse_audio_format_rates_v2v3(): unable to retrieve number of sample rates (clock 5)
[ 8820.921855] usb 1-11: USB disconnect, device number 61
[ 8821.065655] debugfs: Directory '56' with parent 'devices' already present!
[ 8821.193535] usb 1-11: new high-speed USB device number 62 using xhci_hcd
[ 8821.242166] usb 1-11: New USB device found, idVendor=194f, idProduct=0303, bcdDevice= 1.12
[ 8821.242168] usb 1-11: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[ 8821.242170] usb 1-11: Product: AudioBox USB 96
[ 8821.242171] usb 1-11: Manufacturer: PreSonus
[ 8821.242172] usb 1-11: SerialNumber: 000000000000
[ 8831.417276] usb 1-11: uac_clock_source_is_valid(): cannot get clock validity for id 5
[ 8836.537052] usb 1-11: parse_audio_format_rates_v2v3(): unable to retrieve number of sample rates (clock 5)
[ 8882.615203] usb 1-11: USB disconnect, device number 62
[ 8882.763151] debugfs: Directory '57' with parent 'devices' already present!
[ 8882.890909] usb 1-11: new high-speed USB device number 63 using xhci_hcd
[ 8882.919108] usb 1-11: device descriptor read/8, error -71
[ 8883.055305] usb 1-11: device descriptor read/8, error -71
[ 8883.163566] debugfs: Directory '58' with parent 'devices' already present!
[ 8883.498882] usb 1-11: new high-speed USB device number 64 using xhci_hcd
[ 8883.547227] usb 1-11: New USB device found, idVendor=194f, idProduct=0303, bcdDevice= 1.12
[ 8883.547229] usb 1-11: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[ 8883.547231] usb 1-11: Product: AudioBox USB 96
[ 8883.547232] usb 1-11: Manufacturer: PreSonus
[ 8883.547233] usb 1-11: SerialNumber: 000000000000
[ 8883.657682] usb 1-11: USB disconnect, device number 64
```

I suspect the failure is at this line of the linux kernel. Perhaps a new quirk is required?
https://github.com/torvalds/linux/blob/50cc09c18985eacbbd666acfd7be2391394733f5/sound/usb/format.c#L398

The interface is intermittently available as an input source in alsamixer. It will be available for a few seconds, then disappear, reappear, etc. The device works fine on my Windows machine.

I've included the output of lsusb -v below.

```
Bus 001 Device 041: ID 194f:0303 PreSonus Audio Electronics, Inc.
Couldn't open device, some information will be missing
Device Descriptor:
  bLength 18
  bDescriptorType 1
  bcdUSB 2.00
  bDeviceClass 0 (Defined at Interface level)
  bDeviceSubClass 0
  bDeviceProtocol 0
  bMaxPacketSize0 64
  idVendor 0x194f PreSonus Audio Electronics, Inc.
  idProduct 0x0303
  bcdDevice 1.12
  iManufacturer 1
  iProduct 2
  iSerial 3
  bNumConfigurations 1
  Configuration Descriptor:
    bLength 9
    bDescriptorType 2
    wTotalLength 328
    bNumInterfaces 6
    bConfigurationValue 1
    iConfiguration 0
    bmAttributes 0x80
      (Bus Powered)
    MaxPower 500mA
    Interface Association:
      bLength 8
      bDescriptorType 11
      bFirstInterface 0
      bInterfaceCount 3
      bFunctionClass 1 Audio
      bFunctionSubClass 0
      bFunctionProtocol 32
      iFunction 0
    Interface Descriptor:
      bLength 9
      bDescriptorType 4
      bInterfaceNumber 0
      bAlternateSetting 0
      bNumEndpoints 0
      bInterfaceClass 1 Audio
      bInterfaceSubClass 1 Control Device
      bInterfaceProtocol 32
      iInterface 16
      AudioControl Interface Descriptor:
        bLength 9
        bDescriptorType 36
        bDescriptorSubtype 1 (HEADER)
        bcdADC 2.00
        bCategory 8
        wTotalLength 75
        bmControl 0x01
          Latency control Control (read-only)
      AudioControl Interface Descriptor:
        bLength 8
        bDescriptorType 36
        bDescriptorSubtype 10 (CLOCK_SOURCE)
        bClockID 5
        bmAttributes 0x03 Internal programmable Clock
        bmControls 0x07
          Clock Frequency Control (read/write)
          Clock Validity Control (read-only)
        bAssocTerminal 0
        iClockSource 0
      AudioControl Interface Descriptor:
        bLength 17
        bDescriptorType 36
        bDescriptorSubtype 2 (INPUT_TERMINAL)
        bTerminalID 1
        wTerminalType 0x0603 Line Connector
        bAssocTerminal 0
        bCSourceID 5
        bNrChannels 2
        bmChannelConfig 0x00000000
        bmControls 0x0000
        iChannelNames 32
        iTerminal 0
      AudioControl Interface Descriptor:
        bLength 12
        bDescriptorType 36
        bDescriptorSubtype 3 (OUTPUT_TERMINAL)
        bTerminalID 2
        wTerminalType 0x0101 USB Streaming
        bAssocTerminal 0
        bSourceID 1
        bCSourceID 5
        bmControls 0x0000
        iTerminal 0
      AudioControl Interface Descriptor:
        bLength 17
        bDescriptorType 36
        bDescriptorSubtype 2 (INPUT_TERMINAL)
        bTerminalID 3
        wTerminalType 0x0101 USB Streaming
        bAssocTerminal 0
        bCSourceID 5
        bNrChannels 2
        bmChannelConfig 0x00000000
        bmControls 0x0000
        iChannelNames 48
        iTerminal 0
      AudioControl Interface Descriptor:
        bLength 12
        bDescriptorType 36
        bDescriptorSubtype 3 (OUTPUT_TERMINAL)
        bTerminalID 4
        wTerminalType 0x0301 Speaker
        bAssocTerminal 0
        bSourceID 3
        bCSourceID 5
        bmControls 0x0000
        iTerminal 0
    Interface Descriptor:
      bLength 9
      bDescriptorType 4
      bInterfaceNumber 1
      bAlternateSetting 0
      bNumEndpoints 0
      bInterfaceClass 1 Audio
      bInterfaceSubClass 2 Streaming
      bInterfaceProtocol 32
      iInterface 17
    Interface Descriptor:
      bLength 9
      bDescriptorType 4
      bInterfaceNumber 1
      bAlternateSetting 1
      bNumEndpoints 1
      bInterfaceClass 1 Audio
      bInterfaceSubClass 2 Streaming
      bInterfaceProtocol 32
      iInterface 17
      AudioStreaming Interface Descriptor:
        bLength 16
        bDescriptorType 36
        bDescriptorSubtype 1 (AS_GENERAL)
        bTerminalLink 2
        bmControls 0x00
        bFormatType 1
        bmFormats 0x00000001
          PCM
        bNrChannels 2
        bmChannelConfig 0x00000000
        iChannelNames 32
      AudioStreaming Interface Descriptor:
        bLength 6
        bDescriptorType 36
        bDescriptorSubtype 2 (FORMAT_TYPE)
        bFormatType 1 (FORMAT_TYPE_I)
        bSubslotSize 4
        bBitResolution 24
      Endpoint Descriptor:
        bLength 7
        bDescriptorType 5
        bEndpointAddress 0x81 EP 1 IN
        bmAttributes 5
          Transfer Type Isochronous
          Synch Type Asynchronous
          Usage Type Data
        wMaxPacketSize 0x0068 1x 104 bytes
        bInterval 1
        AudioControl Endpoint Descriptor:
          bLength 8
          bDescriptorType 37
          bDescriptorSubtype 1 (EP_GENERAL)
          bmAttributes 0x00
          bmControls 0x00
          bLockDelayUnits 0 Undefined
          wLockDelay 0
    Interface Descriptor:
      bLength 9
      bDescriptorType 4
      bInterfaceNumber 2
      bAlternateSetting 0
      bNumEndpoints 0
      bInterfaceClass 1 Audio
      bInterfaceSubClass 2 Streaming
      bInterfaceProtocol 32
      iInterface 18
    Interface Descriptor:
      bLength 9
      bDescriptorType 4
      bInterfaceNumber 2
      bAlternateSetting 1
      bNumEndpoints 2
      bInterfaceClass 1 Audio
      bInterfaceSubClass 2 Streaming
      bInterfaceProtocol 32
      iInterface 18
      AudioStreaming Interface Descriptor:
        bLength 16
        bDescriptorType 36
        bDescriptorSubtype 1 (AS_GENERAL)
        bTerminalLink 3
        bmControls 0x00
        bFormatType 1
        bmFormats 0x00000001
          PCM
        bNrChannels 2
        bmChannelConfig 0x00000000
        iChannelNames 48
      AudioStreaming Interface Descriptor:
        bLength 6
        bDescriptorType 36
        bDescriptorSubtype 2 (FORMAT_TYPE)
        bFormatType 1 (FORMAT_TYPE_I)
        bSubslotSize 4
        bBitResolution 24
      Endpoint Descriptor:
        bLength 7
        bDescriptorType 5
        bEndpointAddress 0x01 EP 1 OUT
        bmAttributes 5
          Transfer Type Isochronous
          Synch Type Asynchronous
          Usage Type Data
        wMaxPacketSize 0x0068 1x 104 bytes
        bInterval 1
        AudioControl Endpoint Descriptor:
          bLength 8
          bDescriptorType 37
          bDescriptorSubtype 1 (EP_GENERAL)
          bmAttributes 0x00
          bmControls 0x00
          bLockDelayUnits 0 Undefined
          wLockDelay 0
      Endpoint Descriptor:
        bLength 7
        bDescriptorType 5
        bEndpointAddress 0x82 EP 2 IN
        bmAttributes 17
          Transfer Type Isochronous
          Synch Type None
          Usage Type Feedback
        wMaxPacketSize 0x0004 1x 4 bytes
        bInterval 4
    Interface Descriptor:
      bLength 9
      bDescriptorType 4
      bInterfaceNumber 3
      bAlternateSetting 0
      bNumEndpoints 0
      bInterfaceClass 1 Audio
      bInterfaceSubClass 1 Control Device
      bInterfaceProtocol 0
      iInterface 16
      AudioControl Interface Descriptor:
        bLength 9
        bDescriptorType 36
        bDescriptorSubtype 1 (HEADER)
        bcdADC 1.00
        wTotalLength 9
        bInCollection 1
        baInterfaceNr( 0) 4
    Interface Descriptor:
      bLength 9
      bDescriptorType 4
      bInterfaceNumber 4
      bAlternateSetting 0
      bNumEndpoints 2
      bInterfaceClass 1 Audio
      bInterfaceSubClass 3 MIDI Streaming
      bInterfaceProtocol 0
      iInterface 0
      MIDIStreaming Interface Descriptor:
        bLength 7
        bDescriptorType 36
        bDescriptorSubtype 1 (HEADER)
        bcdADC 1.00
        wTotalLength 65
      MIDIStreaming Interface Descriptor:
        bLength 6
        bDescriptorType 36
        bDescriptorSubtype 2 (MIDI_IN_JACK)
        bJackType 1 Embedded
        bJackID 1
        iJack 0
      MIDIStreaming Interface Descriptor:
        bLength 6
        bDescriptorType 36
        bDescriptorSubtype 2 (MIDI_IN_JACK)
        bJackType 2 External
        bJackID 2
        iJack 0
      MIDIStreaming Interface Descriptor:
        bLength 9
        bDescriptorType 36
        bDescriptorSubtype 3 (MIDI_OUT_JACK)
        bJackType 1 Embedded
        bJackID 3
        bNrInputPins 1
        baSourceID( 0) 2
        BaSourcePin( 0) 1
        iJack 0
      MIDIStreaming Interface Descriptor:
        bLength 9
        bDescriptorType 36
        bDescriptorSubtype 3 (MIDI_OUT_JACK)
        bJackType 2 External
        bJackID 4
        bNrInputPins 1
        baSourceID( 0) 1
        BaSourcePin( 0) 1
        iJack 0
      Endpoint Descriptor:
        bLength 9
        bDescriptorType 5
        bEndpointAddress 0x02 EP 2 OUT
        bmAttributes 2
          Transfer Type Bulk
          Synch Type None
          Usage Type Data
        wMaxPacketSize 0x0200 1x 512 bytes
        bInterval 0
        bRefresh 0
        bSynchAddress 0
        MIDIStreaming Endpoint Descriptor:
          bLength 5
          bDescriptorType 37
          bDescriptorSubtype 1 (GENERAL)
          bNumEmbMIDIJack 1
          baAssocJackID( 0) 1
      Endpoint Descriptor:
        bLength 9
        bDescriptorType 5
        bEndpointAddress 0x83 EP 3 IN
        bmAttributes 2
          Transfer Type Bulk
          Synch Type None
          Usage Type Data
        wMaxPacketSize 0x0200 1x 512 bytes
        bInterval 0
        bRefresh 0
        bSynchAddress 0
        MIDIStreaming Endpoint Descriptor:
          bLength 5
          bDescriptorType 37
          bDescriptorSubtype 1 (GENERAL)
          bNumEmbMIDIJack 1
          baAssocJackID( 0) 3
    Interface Descriptor:
      bLength 9
      bDescriptorType 4
      bInterfaceNumber 5
      bAlternateSetting 0
      bNumEndpoints 0
      bInterfaceClass 254 Application Specific Interface
      bInterfaceSubClass 1 Device Firmware Update
      bInterfaceProtocol 2
      iInterface 80
      Device Firmware Upgrade Interface Descriptor:
        bLength 9
        bDescriptorType 33
        bmAttributes 13
          Will Detach
          Manifestation Tolerant
          Upload Unsupported
          Download Supported
        wDetachTimeout 2000 milliseconds
        wTransferSize 1024 bytes
        bcdDFUVersion 1.10
```

ProblemType: Bug
DistroRelease: Ubuntu 18.04
Package: linux-image-5.3.0-46-generic 5.3.0-46.38~18.04.1
ProcVersionSignature: Ubuntu 5.3.0-46.38~18.04.1-generic 5.3.18
Uname: Linux 5.3.0-46-generic x86_64
NonfreeKernelModules: nvidia_modeset nvidia
ApportVersion: 2.20.9-0ubuntu7.14
Architecture: amd64
CurrentDesktop: ubuntu:GNOME
Date: Mon Apr 20 11:09:36 2020
InstallationDate: Installed on 2019-05-11 (344 days ago)
InstallationMedia: Ubuntu 18.04.2 LTS "Bionic Beaver" - Release amd64 (20190210)
SourcePackage: linux-signed-hwe
UpgradeStatus: No upgrade log present (probably fresh install)

Revision history for this message
Karl Hornlund (khornlund) wrote :
Revision history for this message
Launchpad Janitor (janitor) wrote :

Status changed to 'Confirmed' because the bug affects multiple users.

Changed in linux-signed-hwe (Ubuntu):
status: New → Confirmed
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.