I have a Lenovo Thinkpad W510, and the following works flawlessly for me: 1) As root/sudo, create /etc/pm/sleep.d/20_custom-xhci_hcd with the following contents:
#!/bin/sh # File: "/etc/pm/sleep.d/20_custom-xhci_hcd". TMPLIST=/tmp/xhci-dev-list case "${1}" in hibernate|suspend) echo -n '' > $TMPLIST for i in `ls /sys/bus/pci/drivers/xhci_hcd/ | egrep '[0-9a-z]+\:[0-9a-z]+\:.*$'`; do # Unbind xhci_hcd for first device XXXX:XX:XX.X: echo -n "$i" | tee /sys/bus/pci/drivers/xhci_hcd/unbind echo "$i" >> $TMPLIST done ;; resume|thaw) for i in `cat $TMPLIST`; do # Bind xhci_hcd for first device XXXX:XX:XX.X: echo -n "$i" | tee /sys/bus/pci/drivers/xhci_hcd/bind done rm $TMPLIST ;; esac 2) sudo chmod 755 /etc/pm/sleep.d/20_custom-xhci_hcd I didn't need to create the /etc/pm/sleep.d/05_xhci file as suggested by @Gabou, nor did I need to do anything with /etc/modprobe.d/blacklist- xhci_hcd.conf or /etc/pm/config.d/unload_module, as suggested by @Martin. In fact, these three files don't exist on my machine. For other laptops that have ehci_hcd devices which cause suspend problems, I think this script will work by simply replacing xhci_hcd with ehci_hcd, although this isn't directly relevant to this bug report. This works even with two usb devices plugged into the ports when I suspend and then resume -- the devices work and don't need to be plugged in or out. -- You received this bug notification because you are a member of Ubuntu Bugs, which is subscribed to Ubuntu. https://bugs.launchpad.net/bugs/522998 Title: XHCI (USB 3.0) kernel Module Prevents Suspend To manage notifications about this bug go to: https://bugs.launchpad.net/linux/+bug/522998/+subscriptions -- ubuntu-bugs mailing list ubuntu-bugs@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs