You are not logged in.

#1 2016-05-14 18:14:07

williamkray
Member
Registered: 2010-11-06
Posts: 64

[SOLVED] USB audio card hotplug behavior is... very strange

All of this was working fine until maybe a week ago.

System info

Laptop: Lenovo X1 Carbon 2nd Gen
Audio Card: Lenovo ThinkPad OneLink Pro docking station card (C-Media Electronics)
kernel information (I have tried on both LTS and current kernels listed below):

Linux tuber.kray.ca 4.4.10-1-lts #1 SMP Wed May 11 21:03:02 CEST 2016 x86_64 GNU/Linux
Linux tuber.kray.ca 4.5.4-1-ARCH #1 SMP PREEMPT Wed May 11 22:21:28 CEST 2016 x86_64 GNU/Linux

i have also tried the last three LTS kernels i had in my pacman cache to see if any of them had a different behavior, but no dice.


Problem

If I boot my laptop up while it's connected to the docking station, the USB audio card is recognized and used, no problem. But if I unplug it, and plug it back in, I see the audio card get detected by the kernel, it shows up as an ALSA device briefly, and then I just see a bunch of USB errors and the audio card disappears.

Output for various things

dmesg output after plugging in docking station (except I've removed some redundant lines for brevity):

[   45.842092] thinkpad_acpi: docked into hotplug port replicator
[   45.971981] usb 2-3: new high-speed USB device number 4 using xhci_hcd
[   46.008781] usb 3-3: new SuperSpeed USB device number 2 using xhci_hcd
[   46.147571] hub 2-3:1.0: USB hub found
[   46.147789] hub 2-3:1.0: 4 ports detected
[   46.428682] usb 2-3.2: new high-speed USB device number 5 using xhci_hcd
[   46.456482] hub 3-3:1.0: USB hub found
[   46.456611] hub 3-3:1.0: 4 ports detected
[   46.519424] hub 2-3.2:1.0: USB hub found
[   46.519447] hub 2-3.2:1.0: 4 ports detected
[   46.925523] usb 3-3.1: new SuperSpeed USB device number 3 using xhci_hcd
[   47.173292] hub 3-3.1:1.0: USB hub found
[   47.173376] hub 3-3.1:1.0: 4 ports detected
[   47.362814] thinkpad_acpi: EC reports that Thermal Table has changed
[   47.542252] usb 3-3.1.3: new SuperSpeed USB device number 4 using xhci_hcd
[   48.321116] usbcore: registered new interface driver r8152
[   48.324913] usbcore: registered new interface driver cdc_ether
[   48.389082] usb 3-3.1.3: reset SuperSpeed USB device number 4 using xhci_hcd
[   48.428418] r8152 3-3.1.3:1.0 eth0: v1.08.3
[   48.431836] r8152 3-3.1.3:1.0 enp0s20u3u1u3: renamed from eth0
[   50.685684] usb 2-3.1: new high-speed USB device number 6 using xhci_hcd
[   50.779103] hub 2-3.1:1.0: USB hub found
[   50.779448] hub 2-3.1:1.0: 4 ports detected
[   53.292583] usb 2-3.1.4: new full-speed USB device number 7 using xhci_hcd
[   53.424260] input: C-Media Electronics Inc. USB Advanced Audio Device as /devices/pci0000:00/0000:00:14.0/usb2/2-3/2-3.1/2-3.1.4/2-3.1.4:1.3/0003:0D8C:01A8.0003/input/input21
[   53.476166] hid-generic 0003:0D8C:01A8.0003: input,hidraw2: USB HID v1.00 Device [C-Media Electronics Inc. USB Advanced Audio Device] on usb-0000:00:14.0-3.1.4/input3
[   54.042016] usbcore: registered new interface driver snd-usb-audio
[   55.854183] usb 2-3.1-port4: cannot reset (err = -71)
[   55.854255] usb 2-3.1-port4: cannot reset (err = -71)
[   55.854337] usb 2-3.1-port4: cannot reset (err = -71)
[   55.854401] usb 2-3.1-port4: cannot reset (err = -71)
[   55.854481] usb 2-3.1-port4: cannot reset (err = -71)
[   55.854482] usb 2-3.1-port4: Cannot enable. Maybe the USB cable is bad?
[   55.854561] usb 2-3.1-port4: cannot disable (err = -71)
[   55.854641] usb 2-3.1-port4: cannot reset (err = -71)
[   55.854721] usb 2-3.1-port4: cannot reset (err = -71)
[   55.854801] usb 2-3.1-port4: cannot reset (err = -71)
[   55.854881] usb 2-3.1-port4: cannot reset (err = -71)
[   55.854961] usb 2-3.1-port4: cannot reset (err = -71)
[   55.854962] usb 2-3.1-port4: Cannot enable. Maybe the USB cable is bad?
[   55.855041] usb 2-3.1-port4: cannot disable (err = -71)
[   55.855121] usb 2-3.1-port4: cannot reset (err = -71)
[   55.855201] usb 2-3.1-port4: cannot reset (err = -71)
[   55.855309] usb 2-3.1-port4: cannot reset (err = -71)
[   55.855362] usb 2-3.1-port4: cannot reset (err = -71)
[   55.855441] usb 2-3.1-port4: cannot reset (err = -71)
[   55.855442] usb 2-3.1-port4: Cannot enable. Maybe the USB cable is bad?
[   55.855521] usb 2-3.1-port4: cannot disable (err = -71)
[   55.855600] usb 2-3.1-port4: cannot reset (err = -71)
[   55.855681] usb 2-3.1-port4: cannot reset (err = -71)
[   55.855761] usb 2-3.1-port4: cannot reset (err = -71)
[   55.855841] usb 2-3.1-port4: cannot reset (err = -71)
[   55.855921] usb 2-3.1-port4: cannot reset (err = -71)
[   55.855922] usb 2-3.1-port4: Cannot enable. Maybe the USB cable is bad?
[   55.856001] usb 2-3.1-port4: cannot disable (err = -71)
[   55.856085] usb 2-3.1-port4: cannot disable (err = -71)
[   55.856166] hub 2-3.1:1.0: hub_port_status failed (err = -71)
[   55.897217] usb 2-3.1.4: 1:1: cannot set freq 48000 to ep 0x1
[   55.898342] usb 2-3.1.4: 2:1: cannot set freq 48000 to ep 0x82
[   55.898938] usb 2-3.1.4: 13:0: cannot get min/max values for control 2 (id 13)
[   55.898947] usb 2-3.1.4: 14:0: cannot get min/max values for control 2 (id 14)
[   55.898953] usb 2-3.1.4: 8:0: cannot get min/max values for control 2 (id 8)
[   55.898958] usb 2-3.1.4: 9:0: cannot get min/max values for control 2 (id 9)
[   55.898963] usb 2-3.1.4: 10:0: cannot get min/max values for control 2 (id 10)
[   55.903788] usb 2-3.1.4: 8:0: cannot get min/max values for control 2 (id 8)
[   55.903801] usb 2-3.1.4: 8:0: cannot get min/max values for control 2 (id 8)
[   55.903806] usb 2-3.1.4: 8:0: cannot get min/max values for control 2 (id 8)
[   55.903818] usb 2-3.1.4: 8:0: cannot get min/max values for control 2 (id 8)
[   55.903822] usb 2-3.1.4: 8:0: cannot get min/max values for control 2 (id 8)
[   55.908492] usb 2-3.1.4: 2:1: usb_set_interface failed (-19)
[   55.909078] usb 2-3.1.4: 2:1: usb_set_interface failed (-19)
[   55.909628] usb 2-3.1.4: 2:1: usb_set_interface failed (-19)
[   55.910260] usb 2-3.1.4: 2:1: usb_set_interface failed (-19)
[   56.274739] usb 2-3.1.4: 1:1: usb_set_interface failed (-19)

... this repeats like, a lot a lot a lot. about 500ish times.

[   56.275395] usb 2-3.1.4: 1:1: usb_set_interface failed (-19)
[   56.276043] usb 2-3.1.4: 1:1: usb_set_interface failed (-19)
[   56.276777] usb 2-3.1.4: 1:1: usb_set_interface failed (-19)
[   56.277488] usb 2-3.1.4: 1:1: usb_set_interface failed (-19)
[   62.243659] usb 2-3.1: USB disconnect, device number 6
[   62.243663] usb 2-3.1.4: USB disconnect, device number 7
[   62.246325] usb 2-3.2: USB disconnect, device number 5
[   62.410060] usb 2-3: reset high-speed USB device number 4 using xhci_hcd
[   62.569960] usb 2-3: device descriptor read/64, error -71
[   62.833232] usb 2-3: device descriptor read/64, error -71
[   63.043287] usb 2-3: USB disconnect, device number 4
[   63.146634] hub 2-3:1.0: activate --> -19

at which point the device disappears. like, lsusb doesn't find it, alsa doesn't find it, nothing can find it.

i have a second docking station (same model) and it's dmesg output looks different even though it demonstrates the same behavior:

[  494.934968] thinkpad_acpi: docked into hotplug port replicator
[  495.061888] usb 3-3: new SuperSpeed USB device number 8 using xhci_hcd
[  495.091754] usb 2-3: new high-speed USB device number 12 using xhci_hcd
[  495.267268] hub 2-3:1.0: USB hub found
[  495.267614] hub 2-3:1.0: 4 ports detected
[  495.510082] hub 3-3:1.0: USB hub found
[  495.510194] hub 3-3:1.0: 4 ports detected
[  495.548499] usb 2-3.2: new high-speed USB device number 13 using xhci_hcd
[  495.813504] hub 2-3.2:1.0: USB hub found
[  495.813527] hub 2-3.2:1.0: 4 ports detected
[  495.978526] usb 3-3.1: new SuperSpeed USB device number 9 using xhci_hcd
[  496.226187] hub 3-3.1:1.0: USB hub found
[  496.226317] hub 3-3.1:1.0: 4 ports detected
[  496.442262] thinkpad_acpi: EC reports that Thermal Table has changed
[  496.591890] usb 3-3.1.3: new SuperSpeed USB device number 10 using xhci_hcd
[  496.607927] cdc_ether 3-3.1.3:2.0 eth0: register 'cdc_ether' at usb-0000:00:14.0-3.1.3, CDC Ethernet Device, 00:50:b6:77:45:37
[  496.608755] cdc_ether 3-3.1.3:2.0 eth0: unregister 'cdc_ether' usb-0000:00:14.0-3.1.3, CDC Ethernet Device
[  496.695346] usb 3-3.1.3: reset SuperSpeed USB device number 10 using xhci_hcd
[  496.734130] r8152 3-3.1.3:1.0 eth0: v1.08.3
[  497.401491] r8152 3-3.1.3:1.0 enp0s20u3u1u3: renamed from eth0
[  499.838729] usb 2-3.1: new high-speed USB device number 14 using xhci_hcd
[  499.931977] hub 2-3.1:1.0: USB hub found
[  499.933434] hub 2-3.1:1.0: 4 ports detected
[  502.555547] usb 2-3.1.4: new full-speed USB device number 15 using xhci_hcd
[  502.654851] usb 2-3.1.4: config 1 interface 1 altsetting 1 has 2 endpoint descriptors, different from the interface descriptor's value: 1
[  502.676114] input: C-Media Electronics Inc. ThinkPad OneLink Pro Dock Audio as /devices/pci0000:00/0000:00:14.0/usb2/2-3/2-3.1/2-3.1.4/2-3.1.4:1.3/0003:17EF:304E.0005/input/input23
[  502.676186] hid-generic 0003:17EF:304E.0005: input,hidraw2: USB HID v1.00 Device [C-Media Electronics Inc. ThinkPad OneLink Pro Dock Audio] on usb-0000:00:14.0-3.1.4/input3
[  503.938602] retire_capture_urb: 1043 callbacks suppressed
[  511.452947] usb 2-3.1: USB disconnect, device number 14
[  511.452950] usb 2-3.1.4: USB disconnect, device number 15
[  511.470300] usb 2-3.2: USB disconnect, device number 13
[  511.629623] usb 2-3: reset high-speed USB device number 12 using xhci_hcd
[  511.789391] usb 2-3: device descriptor read/64, error -71
[  512.052776] usb 2-3: device descriptor read/64, error -71
[  512.262823] usb 2-3: USB disconnect, device number 12
[  512.366168] hub 2-3:1.0: activate --> -19

lsusb -v output for the card itself (captured while the card was recognized, of course):

Bus 001 Device 007: ID 0d8c:01a8 C-Media Electronics, Inc. 
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               1.10
  bDeviceClass            0 
  bDeviceSubClass         0 
  bDeviceProtocol         0 
  bMaxPacketSize0        16
  idVendor           0x0d8c C-Media Electronics, Inc.
  idProduct          0x01a8 
  bcdDevice            0.00
  iManufacturer           1 C-Media Electronics Inc.
  iProduct                2 USB Advanced Audio Device
  iSerial                 0 
  bNumConfigurations      1
  Configuration Descriptor:
    bLength                 9
    bDescriptorType         2
    wTotalLength          319
    bNumInterfaces          4
    bConfigurationValue     1
    iConfiguration          0 
    bmAttributes         0x80
      (Bus Powered)
    MaxPower              100mA
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        0
      bAlternateSetting       0
      bNumEndpoints           0
      bInterfaceClass         1 Audio
      bInterfaceSubClass      1 Control Device
      bInterfaceProtocol      0 
      iInterface              0 
      AudioControl Interface Descriptor:
        bLength                10
        bDescriptorType        36
        bDescriptorSubtype      1 (HEADER)
        bcdADC               1.00
        wTotalLength          136
        bInCollection           2
        baInterfaceNr( 0)       1
        baInterfaceNr( 1)       2
      AudioControl Interface Descriptor:
        bLength                12
        bDescriptorType        36
        bDescriptorSubtype      2 (INPUT_TERMINAL)
        bTerminalID             1
        wTerminalType      0x0101 USB Streaming
        bAssocTerminal          0
        bNrChannels             2
        wChannelConfig     0x0003
          Left Front (L)
          Right Front (R)
        iChannelNames           0 
        iTerminal               0 
      AudioControl Interface Descriptor:
        bLength                12
        bDescriptorType        36
        bDescriptorSubtype      2 (INPUT_TERMINAL)
        bTerminalID             2
        wTerminalType      0x0201 Microphone
        bAssocTerminal          0
        bNrChannels             2
        wChannelConfig     0x0003
          Left Front (L)
          Right Front (R)
        iChannelNames           0 
        iTerminal               0 
      AudioControl Interface Descriptor:
        bLength                12
        bDescriptorType        36
        bDescriptorSubtype      2 (INPUT_TERMINAL)
        bTerminalID             3
        wTerminalType      0x0603 Line Connector
        bAssocTerminal          0
        bNrChannels             2
        wChannelConfig     0x0003
          Left Front (L)
          Right Front (R)
        iChannelNames           0 
        iTerminal               0 
      AudioControl Interface Descriptor:
        bLength                 9
        bDescriptorType        36
        bDescriptorSubtype      3 (OUTPUT_TERMINAL)
        bTerminalID             6
        wTerminalType      0x0301 Speaker
        bAssocTerminal          0
        bSourceID               8
        iTerminal               0 
      AudioControl Interface Descriptor:
        bLength                 9
        bDescriptorType        36
        bDescriptorSubtype      3 (OUTPUT_TERMINAL)
        bTerminalID             7
        wTerminalType      0x0101 USB Streaming
        bAssocTerminal          0
        bSourceID              15
        iTerminal               0 
      AudioControl Interface Descriptor:
        bLength                10
        bDescriptorType        36
        bDescriptorSubtype      6 (FEATURE_UNIT)
        bUnitID                 8
        bSourceID              16
        bControlSize            1
        bmaControls( 0)      0x01
          Mute Control
        bmaControls( 1)      0x02
          Volume Control
        bmaControls( 2)      0x02
          Volume Control
        iFeature                0 
      AudioControl Interface Descriptor:
        bLength                10
        bDescriptorType        36
        bDescriptorSubtype      6 (FEATURE_UNIT)
        bUnitID                 9
        bSourceID               2
        bControlSize            1
        bmaControls( 0)      0x01
          Mute Control
        bmaControls( 1)      0x02
          Volume Control
        bmaControls( 2)      0x02
          Volume Control
        iFeature                0 
      AudioControl Interface Descriptor:
        bLength                10
        bDescriptorType        36
        bDescriptorSubtype      6 (FEATURE_UNIT)
        bUnitID                10
        bSourceID               3
        bControlSize            1
        bmaControls( 0)      0x01
          Mute Control
        bmaControls( 1)      0x02
          Volume Control
        bmaControls( 2)      0x02
          Volume Control
        iFeature                0 
      AudioControl Interface Descriptor:
        bLength                10
        bDescriptorType        36
        bDescriptorSubtype      6 (FEATURE_UNIT)
        bUnitID                13
        bSourceID               2
        bControlSize            1
        bmaControls( 0)      0x01
          Mute Control
        bmaControls( 1)      0x02
          Volume Control
        bmaControls( 2)      0x02
          Volume Control
        iFeature                0 
      AudioControl Interface Descriptor:
        bLength                10
        bDescriptorType        36
        bDescriptorSubtype      6 (FEATURE_UNIT)
        bUnitID                14
        bSourceID               3
        bControlSize            1
        bmaControls( 0)      0x01
          Mute Control
        bmaControls( 1)      0x02
          Volume Control
        bmaControls( 2)      0x02
          Volume Control
        iFeature                0 
      AudioControl Interface Descriptor:
        bLength                 8
        bDescriptorType        36
        bDescriptorSubtype      5 (SELECTOR_UNIT)
        bUnitID                15
        bNrInPins               2
        baSource( 0)            9
        baSource( 1)           10
        iSelector               0 
      AudioControl Interface Descriptor:
        bLength                14
        bDescriptorType        36
        bDescriptorSubtype      4 (MIXER_UNIT)
        bUnitID                16
        bNrInPins               3
        baSourceID( 0)          1
        baSourceID( 1)         13
        baSourceID( 2)         14
        bNrChannels             2
        wChannelConfig     0x0003
          Left Front (L)
          Right Front (R)
        iChannelNames           0 
        bmControls         0x00
        iMixer                  0 
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        1
      bAlternateSetting       0
      bNumEndpoints           0
      bInterfaceClass         1 Audio
      bInterfaceSubClass      2 Streaming
      bInterfaceProtocol      0 
      iInterface              0 
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        1
      bAlternateSetting       1
      bNumEndpoints           1
      bInterfaceClass         1 Audio
      bInterfaceSubClass      2 Streaming
      bInterfaceProtocol      0 
      iInterface              0 
      AudioStreaming Interface Descriptor:
        bLength                 7
        bDescriptorType        36
        bDescriptorSubtype      1 (AS_GENERAL)
        bTerminalLink           1
        bDelay                  1 frames
        wFormatTag              1 PCM
      AudioStreaming Interface Descriptor:
        bLength                29
        bDescriptorType        36
        bDescriptorSubtype      2 (FORMAT_TYPE)
        bFormatType             1 (FORMAT_TYPE_I)
        bNrChannels             2
        bSubframeSize           2
        bBitResolution         16
        bSamFreqType            7 Discrete
        tSamFreq[ 0]         8000
        tSamFreq[ 1]        11025
        tSamFreq[ 2]        16000
        tSamFreq[ 3]        22050
        tSamFreq[ 4]        32000
        tSamFreq[ 5]        44100
        tSamFreq[ 6]        48000
      Endpoint Descriptor:
        bLength                 9
        bDescriptorType         5
        bEndpointAddress     0x01  EP 1 OUT
        bmAttributes           13
          Transfer Type            Isochronous
          Synch Type               Synchronous
          Usage Type               Data
        wMaxPacketSize     0x00c4  1x 196 bytes
        bInterval               1
        bRefresh                0
        bSynchAddress           0
        AudioControl Endpoint Descriptor:
          bLength                 7
          bDescriptorType        37
          bDescriptorSubtype      1 (EP_GENERAL)
          bmAttributes         0x01
            Sampling Frequency
          bLockDelayUnits         0 Undefined
          wLockDelay             69 Undefined
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        2
      bAlternateSetting       0
      bNumEndpoints           0
      bInterfaceClass         1 Audio
      bInterfaceSubClass      2 Streaming
      bInterfaceProtocol      0 
      iInterface              0 
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        2
      bAlternateSetting       1
      bNumEndpoints           1
      bInterfaceClass         1 Audio
      bInterfaceSubClass      2 Streaming
      bInterfaceProtocol      0 
      iInterface              0 
      AudioStreaming Interface Descriptor:
        bLength                 7
        bDescriptorType        36
        bDescriptorSubtype      1 (AS_GENERAL)
        bTerminalLink           7
        bDelay                  1 frames
        wFormatTag              1 PCM
      AudioStreaming Interface Descriptor:
        bLength                29
        bDescriptorType        36
        bDescriptorSubtype      2 (FORMAT_TYPE)
        bFormatType             1 (FORMAT_TYPE_I)
        bNrChannels             2
        bSubframeSize           2
        bBitResolution         16
        bSamFreqType            7 Discrete
        tSamFreq[ 0]         8000
        tSamFreq[ 1]        11025
        tSamFreq[ 2]        16000
        tSamFreq[ 3]        22050
        tSamFreq[ 4]        32000
        tSamFreq[ 5]        44100
        tSamFreq[ 6]        48000
      Endpoint Descriptor:
        bLength                 9
        bDescriptorType         5
        bEndpointAddress     0x82  EP 2 IN
        bmAttributes           13
          Transfer Type            Isochronous
          Synch Type               Synchronous
          Usage Type               Data
        wMaxPacketSize     0x00c4  1x 196 bytes
        bInterval               1
        bRefresh                0
        bSynchAddress           0
        AudioControl Endpoint Descriptor:
          bLength                 7
          bDescriptorType        37
          bDescriptorSubtype      1 (EP_GENERAL)
          bmAttributes         0x01
            Sampling Frequency
          bLockDelayUnits         0 Undefined
          wLockDelay              0 Undefined
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        3
      bAlternateSetting       0
      bNumEndpoints           1
      bInterfaceClass         3 Human Interface Device
      bInterfaceSubClass      0 
      bInterfaceProtocol      0 
      iInterface              0 
        HID Device Descriptor:
          bLength                 9
          bDescriptorType        33
          bcdHID               1.00
          bCountryCode            0 Not supported
          bNumDescriptors         1
          bDescriptorType        34 Report
          wDescriptorLength      69
         Report Descriptors: 
           ** UNAVAILABLE **
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x87  EP 7 IN
        bmAttributes            3
          Transfer Type            Interrupt
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0010  1x 16 bytes
        bInterval               1
Device Status:     0x0000
  (Bus Powered)
halp

i'm going bonkers. any help is appreciated.
the closest thing i can find is this post from centuries ago: https://bbs.archlinux.org/viewtopic.php?id=79776

i also found some links for other hardware/usb audio cards that had similar issues, but all of them appeared to be dead ends or people just said "sounds like a hardware issue" but I have TWO of the same docking station and they're both doing weird things. so i don't think that's the case here.

Last edited by williamkray (2016-05-14 20:32:40)

Offline

#2 2016-05-14 20:08:12

williamkray
Member
Registered: 2010-11-06
Posts: 64

Re: [SOLVED] USB audio card hotplug behavior is... very strange

what the heck. ok, so looking around at other posts online here, i found some other people who were having generally weird USB behavior as well... one of which was a post here: https://bbs.archlinux.org/viewtopic.php?id=212390 about a USB hub not being found.

this got me thinking "well my docking station + audio card has USB hubs built into it, maybe that's related"

so i experimented with plugging USB devices into some of the ports on the docking station. the following cases and results were tested:

1) computer is "docked" already, audio card was found and then disappeared already, and then i plug in a thumb drive to the docking station. result: it kicks off a re-association with the USB hub, re-locates the audio card, and all is right with the world.
2) computer is not docked, docking station has USB thumb drive plugged in already, and then I "dock" the computer. result: dmesg shows that the audio card is found, the thumb drive is found, and no USB errors are reported that I can see. audio card remains attached, all is right with the world.

this behavior was observed across both docking stations. the audio card remains even after removing the thumbdrive from the docking station.

an example of the dmesg output after plugging in the thumb drive is below:

first i dock the laptop:
[ 3288.244662] thinkpad_acpi: docked into hotplug port replicator
[ 3288.374516] usb 2-3: new high-speed USB device number 48 using xhci_hcd
[ 3288.411354] usb 3-3: new SuperSpeed USB device number 17 using xhci_hcd
[ 3288.550094] hub 2-3:1.0: USB hub found
[ 3288.550206] hub 2-3:1.0: 4 ports detected
[ 3288.834509] usb 2-3.2: new high-speed USB device number 49 using xhci_hcd
[ 3288.859380] hub 3-3:1.0: USB hub found
[ 3288.859563] hub 3-3:1.0: 4 ports detected
[ 3288.925136] hub 2-3.2:1.0: USB hub found
[ 3288.925196] hub 2-3.2:1.0: 4 ports detected
[ 3289.331355] usb 3-3.1: new SuperSpeed USB device number 18 using xhci_hcd
[ 3289.579200] hub 3-3.1:1.0: USB hub found
[ 3289.579337] hub 3-3.1:1.0: 4 ports detected
[ 3289.754991] thinkpad_acpi: EC reports that Thermal Table has changed
[ 3289.944606] usb 3-3.1.3: new SuperSpeed USB device number 19 using xhci_hcd
[ 3289.960486] cdc_ether 3-3.1.3:2.0 eth0: register 'cdc_ether' at usb-0000:00:14.0-3.1.3, CDC Ethernet Device, 00:50:b6:77:45:37
[ 3289.961399] cdc_ether 3-3.1.3:2.0 eth0: unregister 'cdc_ether' usb-0000:00:14.0-3.1.3, CDC Ethernet Device
[ 3290.044846] usb 3-3.1.3: reset SuperSpeed USB device number 19 using xhci_hcd
[ 3290.087002] r8152 3-3.1.3:1.0 eth0: v1.08.3
[ 3290.736037] r8152 3-3.1.3:1.0 enp0s20u3u1u3: renamed from eth0
[ 3293.084726] usb 2-3.1: new high-speed USB device number 50 using xhci_hcd
[ 3293.177951] hub 2-3.1:1.0: USB hub found
[ 3293.178182] hub 2-3.1:1.0: 4 ports detected
[ 3295.904783] usb 2-3.1.4: new full-speed USB device number 51 using xhci_hcd
[ 3296.000718] usb 2-3.1.4: config 1 interface 1 altsetting 1 has 2 endpoint descriptors, different from the interface descriptor's value: 1
[ 3296.021279] input: C-Media Electronics Inc. ThinkPad OneLink Pro Dock Audio as /devices/pci0000:00/0000:00:14.0/usb2/2-3/2-3.1/2-3.1.4/2-3.1.4:1.3/0003:17EF:304E.000B/input/input29
[ 3296.021376] hid-generic 0003:17EF:304E.000B: input,hidraw2: USB HID v1.00 Device [C-Media Electronics Inc. ThinkPad OneLink Pro Dock Audio] on usb-0000:00:14.0-3.1.4/input3
[ 3302.189307] retire_capture_urb: 4993 callbacks suppressed

right around here is where the audio card disappears:
[ 3304.686202] usb 2-3.1.4: USB disconnect, device number 51
[ 3304.686244] usb 2-3.1: USB disconnect, device number 50
[ 3304.686438] usb 2-3.1.4: cannot submit urb (err = -19)
[ 3304.691797] usb 2-3.1.4: 2:1: cannot set freq 44100 to ep 0x82
[ 3304.815111] hub 2-3.1:1.0: activate --> -19
[ 3304.816123] usb 2-3.2: USB disconnect, device number 49
[ 3304.975292] usb 2-3: reset high-speed USB device number 48 using xhci_hcd
[ 3305.135135] usb 2-3: device descriptor read/64, error -71
[ 3305.398499] usb 2-3: device descriptor read/64, error -71
[ 3305.608527] usb 2-3: USB disconnect, device number 48
[ 3305.711832] hub 2-3:1.0: activate --> -19

then i plug in a thumbdrive:
[ 3324.589212] usb 2-3: new high-speed USB device number 52 using xhci_hcd
[ 3324.765351] hub 2-3:1.0: USB hub found
[ 3324.765510] hub 2-3:1.0: 4 ports detected
[ 3325.052572] usb 2-3.1: new high-speed USB device number 53 using xhci_hcd
[ 3325.144462] hub 2-3.1:1.0: USB hub found
[ 3325.144784] hub 2-3.1:1.0: 4 ports detected
[ 3325.229258] usb 2-3.2: new high-speed USB device number 54 using xhci_hcd
[ 3325.319845] hub 2-3.2:1.0: USB hub found
[ 3325.319906] hub 2-3.2:1.0: 4 ports detected
[ 3325.429249] usb 2-3.1.4: new full-speed USB device number 55 using xhci_hcd
[ 3325.528589] usb 2-3.1.4: config 1 interface 1 altsetting 1 has 2 endpoint descriptors, different from the interface descriptor's value: 1
[ 3325.549290] input: C-Media Electronics Inc. ThinkPad OneLink Pro Dock Audio as /devices/pci0000:00/0000:00:14.0/usb2/2-3/2-3.1/2-3.1.4/2-3.1.4:1.3/0003:17EF:304E.000C/input/input30
[ 3325.549356] hid-generic 0003:17EF:304E.000C: input,hidraw2: USB HID v1.00 Device [C-Media Electronics Inc. ThinkPad OneLink Pro Dock Audio] on usb-0000:00:14.0-3.1.4/input3
[ 3325.589264] usb 2-3.2.2: new high-speed USB device number 56 using xhci_hcd
[ 3325.785259] usb-storage 2-3.2.2:1.0: USB Mass Storage device detected
[ 3325.785516] scsi host15: usb-storage 2-3.2.2:1.0
[ 3326.812246] scsi 15:0:0:0: Direct-Access     Lexar    USB Flash Drive  8.07 PQ: 0 ANSI: 4
[ 3326.814600] sd 15:0:0:0: [sdb] 15659008 512-byte logical blocks: (8.02 GB/7.47 GiB)
[ 3326.815286] sd 15:0:0:0: [sdb] Write Protect is off
[ 3326.815289] sd 15:0:0:0: [sdb] Mode Sense: 23 00 00 00
[ 3326.816572] sd 15:0:0:0: [sdb] Write cache: disabled, read cache: enabled, doesn't support DPO or FUA
[ 3326.869162]  sdb: sdb1 sdb2
[ 3326.871325] sd 15:0:0:0: [sdb] Attached SCSI removable disk
[ 3355.376599] usb 2-3.2.2: USB disconnect, device number 56

this is super bizarre. i will continue testing.

Offline

#3 2016-05-14 20:13:13

williamkray
Member
Registered: 2010-11-06
Posts: 64

Re: [SOLVED] USB audio card hotplug behavior is... very strange

OK! i think i've figured it out. I use tlp for power management, but i think it's putting the USB ports to sleep... or at least, something is incorrectly enabling usb suspend when plugged into the docking station. because i ran powertop while plugged into the dock, and it did the same reassociation with the usb devices. so, it's still a ways away to say that it's solved, but i've at least figured out the root problem. hooray!!!!

EDIT: yes, adding the USB device IDs for both the USB hub in the docking station, as well as the USB audio card to the TLP USB suspend blacklist and restarting tlp service seems to have done the trick. all it well. once again, i have solved my own problem. hopefully this post will be helpful if anyone else comes across a similar issue.

Last edited by williamkray (2016-05-14 20:32:21)

Offline

Board footer

Powered by FluxBB