On 01.10.2016 11:34, Pierre de Villemereuil wrote:
Hi Mathias, FYI, turned out to be pretty easy. I got the tip from deano_ferrari without even asking: https://forums.opensuse.org/showthread.php/519926-No-USB-device-detected? p=2794434#post2794434 Simply adding this to GRUB options while launching kernel: usbcore.autosuspend=-1 disables USB suspends and fixes the problem (well, "workarounds" it). Weirdly enough, I still get "auto" on battery with: cat /sys/bus/pci/devices/0000\:00\:14.0/power/control Though I get "-1" from this: cat /sys/module/usbcore/parameters/autosuspend Not sure any of this is relevant, but I guess sharing information can't hurt.
It's probably laptop-mode-tools (or equivalent) that keeps writing over that value. I'm writing a workaround that will disable runtime PM for the xhci controller In case we are about to put (keep) it in D0 without PME# wake support. I also learned the lspci -vv might wake up the controller from D3cold so it's also possible that PME# is failing in D3Cold. Could you do two more things to verify the D state so that I fix the right issue: 1. check the D state from sysfs, on-battery, in state where usb devices are not detected: cat /sys/bus/pci/devices/0000\:00\:14.0/firmware_node/power_state 2. send the DSDT table of your machine, it includes the ACPI methods that dictate the possible D states copy /sys/firmware/acpi/tables/DSDT to a file and send it (a link to it, or attachment) to me, It's binary. -Mathias -- 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