At Wed, 11 Sep 2013 18:04:41 +0200, Takashi Iwai wrote: > > At Wed, 11 Sep 2013 11:45:08 -0400 (EDT), > Alan Stern wrote: > > > > On Wed, 11 Sep 2013, Takashi Iwai wrote: > > > > > At Wed, 11 Sep 2013 10:54:40 -0400 (EDT), > > > Alan Stern wrote: > > > > > > > > On Wed, 11 Sep 2013, Takashi Iwai wrote: > > > > > > > > > Haswell LynxPoint and LynxPoint-LP with the recent Intel BIOS show > > > > > mysterious wakeups after shutdown occasionally. After discussing with > > > > > BIOS engineers, they explained that the new BIOS expects that the > > > > > wakeup sources are cleared and set to D3 for all wakeup devices when > > > > > the system is going to sleep or power off, but the current xhci driver > > > > > doesn't do this properly (partly intentionally). > > > > > > > > > > This patch introduces a new quirk, XHCI_HSW_SPURIOUS_WAKEUP, for > > > > > fixing the spurious wakeups at S5 by calling xhci_reset() in the xhci > > > > > shutdown ops as done in xhci_stop(), and setting the device to PCI D3 > > > > > at shutdown and remove ops. > > > > > > > > What happens if xhci-hcd is unloaded and then loaded again? The probe > > > > function expects the device to be in D0, not in D3hot. Therefore the > > > > second time around, probe will fail. > > > > > > Reloading the module works on the test machines fine. > > > > Was the kernel on the test machines built with CONFIG_PM_RUNTIME > > disabled? > > Good point. I'll check whether it works without CONFIG_PM_RUNTIME. Reloading xhci-hcd module works no matter whether CONFIG_PM_RUNTIME=y or not. (And yes, the device went to D3 at unload and to D0 at load, as long as looking at lspci output.) Takashi -- 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