On Sun, 2009-08-16 at 06:42 +0300, Maxim Levitsky wrote: > Hi, > > I have recently put back the davicom dm9009 ethernet card into my > computer. > > Some long time ago, I have written its suspend/resume routines. > Now I see that few things have changed, like I need to enable wake in > sysfs or better patch the code to do so, some nice helpers like > pci_prepare_to_sleep have arrived, etc. > > > I narrowed the strange issue down to following situation: > > I reload dmfe.ko (and networkmanager is disabled) > I don't ifup the device, thus pretty much no hardware initialization > takes place (but this appears not to matter anyway) > > I then suspend the system, and WOL doesn't work (I have patched the > driver to enable WOL automaticly) > > I then, suspend again. WOL works, and continues to work as long as I > don't reload the driver. If I do, same situation repeats. > > Also, after a boot, WOL works, so a reload cycle triggers that issue. > > And most importantly, if I don't do a > > pci_set_power_state(pci_dev, pci_choose_state (pci_dev, state)); > > in .suspend, then WOL always works. > > and I have even tried to set state manually to PCI_D3hot or PCI_D3cold, > > I also tried to use pci_save_state > > > I also have 2 copies of this card, and both have this issue. > I also tried 2 pci slots. > > Kernel is vanilla 2.6.31-rc5 Bisect reveals: 44e4e66eeae5338b3ca0b28f8352e60bf18d5ba8 is first bad commit commit 44e4e66eeae5338b3ca0b28f8352e60bf18d5ba8 Author: Rafael J. Wysocki <rjw@xxxxxxx> Date: Mon Jul 7 03:32:52 2008 +0200 PCI: rework pci_set_power_state function to call platform first Rework pci_set_power_state() so that the platform callback is invoked before the native mechanism, if necessary. Also, make the function check if the device is power manageable by the platform before invoking the platform callback. This may matter if the device dependent on additional power resources controlled by the platform is being put into D0, in which case those power resources must be turned on before we attempt to handle the device itself. Signed-off-by: Rafael J. Wysocki <rjw@xxxxxxx> Acked-by: Pavel Machek <pavel@xxxxxxx> Signed-off-by: Jesse Barnes <jbarnes@xxxxxxxxxxxxxxxx> Note that probably this device has no acpi entries, because it is an addon card, bios knows nothing about it Best regards, Maxim Levitsky _______________________________________________ linux-pm mailing list linux-pm@xxxxxxxxxxxxxxxxxxxxxxxxxx https://lists.linux-foundation.org/mailman/listinfo/linux-pm