Same problem here. Disabling USB3 does the trick on my Gigabyte X58A-UD3R mainboard. But the approach you are taking for unloading the module before suspending is more of a workaround then necessary. Suspending has the right tools for this.
I implemented it like this. Put the following code (as root) into
/etc/pm/sleep.d/05_disable_usb3
Code:
#!/bin/bash
## Unload USB 3 module before sleep
case "$1" in
suspend)
/sbin/modprobe -r xhci
;;
hibernate)
/sbin/modprobe -r xhci
;;
thaw)
/sbin/modprobe xhci
;;
resume)
/sbin/modprobe xhci
;;
esac
After saving this, make it executable:
Code:
chmod ugo+x /etc/pm/sleep.d/05_disable_usb3
Now, when suspending, the script is passed suspend, and while resuming the scripts is passed resume, so it always performs the correct action.
Works great here. But I'm afraid that it will give difficulties when the driver is in use, for example, when an external HDD is connected using USB3. Hopefully the driver will have improved by the time I get me one.
Has anyone filed a bug report about the XHCI driver (maybe in combination with the NEC chip?) yet?
Bookmarks