First sorry for any English mistake as I am French.
I use Debian 6.0 (Squeeze) amd64.
I had some problems to get my USB 3.0 external hard drive to work on my USB 3.0 express card (a Trendnet TU3-H2EC). Before, it mounted randomly, say one time on ten. If it didn't mounted after I boot, then I had no other choice than to reboot again and again until it is finally mounted.
I was a little exasperated by this behavior and searched some solutions on the web. None of them worked for me.
Firstly, here is my output of lsmod | grep xhci :
Code: Select all
xhci 33444 0
usbcore 122386 6 usb_storage,usbhid,uhci_hcd,ehci_hcd,xhci
- added an option to the kernel line. I tried to edit the file /etc/default/grub and added the following in the GRUB_CMDLINE_LINUX parameter : xhci_hcd.enable=1, then xhci-hcd.enable=1, with no luck. Also tried xhci.enable=1 (sounded more logical to me as I think I don't have any xhci_hcd module) but I then got the error "xhci : unknown parameter enable" and xhci was then disabled. I guessed that this could be the path to the resolution of the problem, but I don't know which parameter this module is accepting. I didn't forget to do a update-grub after I edited this file of course.
- created a file /etc/modprobe.d/xhci with content "options xhci enable=1" or /etc/modprobe.d/xhci_hcd with content "options xhci_hcd enable=1" but no luck with that.
- created a file /etc/pm/config.d/unload_module or /etc/pm/config.d/xhci_hcd or /etc/pm/config.d/xhci with content "SUSPEND_MODULES=xhci_hcd" or "SUSPEND_MODULES=xhci" but still no luck except that now the "hibernate" command is shutting down my computer (not hibernate, a real shutdown).
I felt that xhci was loaded too late and so failed to work properly most of the time. We have to find a way to load it before the other modules.
Here is what I then tried after having restored all the files I modified :
- append "xhci" to /etc/modules" so that it now contains the following :
This should have for effect to load the module at boot time.
Code: Select all
firewire-sbp2 loop xhci
- added a line "softdep ehci-hcd pre: xhci-hcd" to /etc/modprobe.d/aliases.conf before the last two lines to ensure that xhci is loaded first ; here is the last three lines of this file :
Code: Select all
softdep ehci-hcd pre: xhci-hcd softdep uhci-hcd pre: ehci-hcd softdep ohci-hcd pre: ehci-hcd
So if you got the same problem, you can try my solution. It worth a try !
Hoping to help someone someday !
Regards