After I resume from suspend, no USB devices are working. Plugging and unplugging them from the port produce no dmesg or lsusb entries. I tried
* recompiling the kernel with the usb host subsystem as a module (and rmmod+modprobe them)
* some iommu kernel command line tricks
* disabling ACPI and APM
* playing in UEFI settings
Those did not work. I know there is real kernel bugs regarding this, but I still hope I missed something. Any idea?
Lenovo W540, kernel 3.10 to 4.3, SSD, pm-suspend
Edit:
Apparently I did not try hard enough. Adding some sleeps in the pm-util script solved the problem
Code: Select all
#!/bin/bash
#/etc/pm/sleep.d/suspend
#!/bin/bash
case "$1" in
suspend|suspend_hybrid|hibernate)
modprobe -r ehci_pci ehci_hcd
sleep 0.5
modprobe -r xhci_hcd
sleep 0.5
modprobe -r xhci_pci
;;
resume|thaw)
# modprobe nvidiabl
modprobe xhci_hcd ehci_pci ehci_hcd
sleep 1.5
modprobe xhci_pci
echo bob > /tmp/bob
;;
esac
