> From: Vaibhav Gupta <vaibhavgupt...@gmail.com> > Sent: Monday, May 25, 2020 5:27 AM > To: Vaibhav Gupta <vaibhav.varo...@gmail.com>; Bjorn Helgaas > <helg...@kernel.org>; Bjorn Helgaas <bhelg...@google.com>; > bj...@helgaas.com; Kirsher, Jeffrey T <jeffrey.t.kirs...@intel.com>; David S. > Miller <da...@davemloft.net>; r...@rjwysocki.net > Cc: Vaibhav Gupta <vaibhavgupt...@gmail.com>; Brandeburg, Jesse > <jesse.brandeb...@intel.com>; intel-wired-...@lists.osuosl.org; > netdev@vger.kernel.org; linux-ker...@vger.kernel.org; linux-kernel- > ment...@lists.linuxfoundation.org; sk...@linuxfoundation.org > Subject: [PATCH v2] e1000: use generic power management > > compile-tested only > > With legacy PM hooks, it was the responsibility of a driver to manage PCI > states and also the device's power state. The generic approach is to let PCI > core handle the work. > > e1000_suspend() calls __e1000_shutdown() to perform intermediate tasks. > __e1000_shutdown() modifies the value of "wake" (device should be wakeup > enabled or not), responsible for controlling the flow of legacy PM. > > Since, PCI core has no idea about the value of "wake", new code for generic > PM may produce unexpected results. Thus, use "device_set_wakeup_enable()" > to wakeup-enable the device accordingly. > > Signed-off-by: Vaibhav Gupta <vaibhavgupt...@gmail.com> > --- > drivers/net/ethernet/intel/e1000/e1000_main.c | 49 +++++-------------- > 1 file changed, 13 insertions(+), 36 deletions(-)
I don't have many old PCI systems that handle power management properly before adding this patch. However, the few ones that do continue to do so with the older e1000 parts I still have around. So a small sample, but at least confirmed on _some_ real hardware Tested-by: Aaron Brown <aaron.f.br...@intel.com>