Re: [PATCH] xhci: Fix spurious wakeups after S5 on Haswell (v3)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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.

> What happens if xhci-hcd was never loaded in the first place?  How will 
> the controller get put into D3 then?

If no xhci driver is loaded at all, the problem doesn't happen.
The problem is introduced solely by loading the xhci driver.

> Can somebody ask the BIOS engineers to fix their BIOS?  There's no
> reason wakeup devices should have to be reset and put in D3; it should
> be sufficient that they are disabled for wakeup.

It seems that this will be fixed in the BIOS side, too.  But, the
problematic BIOS is still on the shipped machines that will appear in
the market sooner, unfortunately.


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




[Index of Archives]     [Linux Media]     [Linux Input]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Old Linux USB Devel Archive]

  Powered by Linux