On 28.03.2017 16:25, Stephan Müller wrote:
Am Dienstag, 28. März 2017, 03:12:44 CEST schrieb Peter Chen:
What kernel version was this on again? Has it been working before? does reloading xhci driver work?
The device is question is at port 2-3. usb core dyndbg: [ 72.546341] Restarting tasks ... [ 72.546465] hub 1-0:1.0: state 7 ports 11 chg 0000 evt 0028 [ 72.546595] hub 2-0:1.0: state 7 ports 4 chg 0008 evt 0000 [ 72.546662] usb usb2-port3: status 0263, change 0000, 5.0 Gb/s
[ 72.546670] usb 2-3: USB disconnect, device number 2 [ 72.546675] usb 2-3: unregistering device [ 72.546682] usb 2-3: unregistering interface 2-3:1.0 [ 72.552689] done. [ 72.553977] brcmfmac 0000:03:00.0: Direct firmware load for brcm/ brcmfmac43602-pcie.txt failed with error -2 [ 72.676148] usb 2-3: usb_disable_device nuking all URBs [ 72.727915] usb usb2-port3: not reset yet, waiting 50ms [ 72.780009] usb usb2-port3: not reset yet, waiting 200ms [ 72.985875] usb usb2-port3: not reset yet, waiting 200ms [ 73.063770] brcmfmac: brcmf_c_preinit_dcmds: Firmware version = wl0: Nov 10 2015 06:38:10 version 7.35.177.61 (r598657) FWID 01-ea662a8c [ 73.096915] brcmfmac: brcmf_cfg80211_reg_notifier: not a ISO3166 code (0x30 0x30) [ 73.122551] brcmfmac 0000:03:00.0 wlp3s0: renamed from wlan0 [ 73.140131] IPv6: ADDRCONF(NETDEV_UP): wlp3s0: link is not ready [ 73.193919] usb usb2-port3: not reset yet, waiting 200ms [ 73.402026] usb usb2-port3: hot reset failed, warm reset [ 73.402028] usb usb2-port3: not enabled, trying warm reset again... [ 73.609968] usb usb2-port3: not warm reset yet, waiting 200ms [ 73.817946] usb usb2-port3: not warm reset yet, waiting 200ms [ 74.026100] usb usb2-port3: not warm reset yet, waiting 200ms [ 74.234126] usb usb2-port3: not warm reset yet, waiting 200ms [ 74.234167] usb usb2-port3: not enabled, trying warm reset again... [ 74.441910] usb usb2-port3: not warm reset yet, waiting 200ms [ 74.649894] usb usb2-port3: not warm reset yet, waiting 200ms [ 74.857981] usb usb2-port3: not warm reset yet, waiting 200ms [ 75.066006] usb usb2-port3: not warm reset yet, waiting 200ms [ 75.066040] xhci_hcd 0000:00:14.0: Cannot set link state. [ 75.066045] usb usb2-port3: cannot disable (err = -32)
I don't know what causes the disconnect, or why the reset fails, but after all this the device disable also fails. This is because usb3 disable changed to set the device to U3 state and disable remote wake to prevent them from re-enumerating. This was to fix usb mass storage devices from re-appering right after eject/safely removing them. It's possible that the old way of actually disabling, and then enter RxDetect would help finding the device again after disconnect and failed reset. you could try a kernel without that patch and see if it works: commit 37be66767e3cae4fd16e064d8bb7f9f72bf5c045 usb: hub: Fix auto-remount of safely removed or ejected USB-3 devices
[ 75.066065] xhci_hcd 0000:00:14.0: Cannot set link state. [ 75.066069] usb usb2-port3: cannot disable (err = -32) [ 75.066079] hub 2-0:1.0: state 7 ports 4 chg 0000 evt 0008 [ 75.066130] hub 2-0:1.0: hub_suspend [ 75.066140] usb usb2: bus auto-suspend, wakeup 1 xhci dyndbg (I hope I have copied the right logs): --- suspended --- [ 228.110972] Restarting tasks ... [ 228.129044] xhci_hcd 0000:00:14.0: ep 0x81 - asked for 16 bytes, 10 bytes untransferred [ 228.129949] xhci_hcd 0000:00:14.0: get port status, actual port 2 status = 0x603 [ 228.129951] xhci_hcd 0000:00:14.0: Get port status returned 0x103 [ 228.129962] xhci_hcd 0000:00:14.0: get port status, actual port 2 status = 0x202e0
Port Status: 0x202e0 Disconnected Disabled Link: Polling Powered Unknown port speed Connect Status Change xhci portsc register really thinks it disconnected. -Mathias -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html