On Thursday, 11 of December 2008, Alan Stern wrote: > On Wed, 10 Dec 2008, Alan Stern wrote: > > > On Wed, 10 Dec 2008, Rafael J. Wysocki wrote: > > > > > > > Well, it looks like you forgot to actually call pci_save_power_state(). :-) > > > > > > > > I didn't forget it -- in my tree there is no such function! :-) > > > > > > That should have been pci_save_state(). [Note to self: don't send email when > > > you're too tired.] > > > > Yes, adding pci_save_state() fixed the problem. Here is the new patch; > > it seems to work. Anything else need to be changed? > > I spoke a little too soon. It appears that there is a small bug in > pci_enable_wake(): > > int pci_enable_wake(struct pci_dev *dev, pci_power_t state, int enable) > { > int error = 0; > bool pme_done = false; > > if (!device_may_wakeup(&dev->dev)) > return -EINVAL; > > This is wrong; the test should be: > > if (enable && !device_may_wakeup(&dev->dev)) Hm, that makes sense. Will you prepare a patch? Rafael _______________________________________________ linux-pm mailing list linux-pm@xxxxxxxxxxxxxxxxxxxxxxxxxx https://lists.linux-foundation.org/mailman/listinfo/linux-pm