On Mon, 29 Jun 2015, Raphael Hertzog wrote: > [ Please keep me in CC as I'm not subscribed ] > > Hello, > > I'm the happy owner of a Intel NUC D54250WYKH (updated it to latest Intel > firmware) which has an XHCI host controller. It's connected over USB 3 to > a JBOD-configured disk enclosure (ICYBOX IB-RD3640SU3E2) which uses a > JMicron USB to ATA bridge. I have attached the output of lspci -v, lsusb > -v, lshw to describe the hardware in more details. > > When I boot the computer, the disk enclosure is not detected/recognized > (even though it's correctly powered up). I have to power cycle the disk > enclosure while the NUC is running so that it gets properly detected > (see dmesg-powercycle). The kernel messages do not show any obvious error > during boot (see attached file dmesg-boot) > > I have this problem with the stock 4.1 kernel as well as all Debian kernels > (3.16.x in Jessie, 4.0.x in Stretch). > > While googling for possible solutions to force a new detection of the > hardware, I found the explanation of how to unbind/rebind the xhci_hcd > module: > > echo -n "0000:00:14.0" > /sys/bus/pci/drivers/xhci_hcd/unbind > echo -n "0000:00:14.0" > /sys/bus/pci/drivers/xhci_hcd/bind > > (with "0000:00:14.0" the PCI identifier of the xHCI root hub) > > This does not work for me. The undetected disk enclosure stays > unnoticed... only the hardware power cycle works. > > I also tried to tweak the usbcore options (disabling autosuspend, > old_scheme_first=Y, increasing initial_descriptor_timeout to 15000) > but none of this did help. > > Do you have any suggestion of what could be wrong in my setup ? > > I'm happy to try patches and/or do further tests. Offhand, it sounds like something is wrong with the enclosure. It's possible that the BIOS does something strange to it, which prevents it from working until the power is cycled. Have you checked for BIOS updates? Here's another thing you can do: Try capturing a usbmon trace while doing the unbind/bind test. Since a controller's usbmon trace file doesn't exist until after it is bound, you will have to run your trace on the /sys/kernel/debug/usb/usbmon/0u file, which will capture information on _all_ USB buses -- so try to minimize other USB activity while running the test. Alan Stern -- 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