Thread (2 messages) 2 messages, 2 authors, 2020-06-01

Re: [Linux-kernel-mentees] [PATCH v2] e1000: use generic power management

From: Brown, Aaron F <hidden>
Date: 2020-06-01 17:16:01
Also in: intel-wired-lan, lkml, netdev

From: Vaibhav Gupta <vaibhavgupta40@gmail.com>
Sent: Monday, May 25, 2020 5:27 AM
To: Vaibhav Gupta <redacted>; Bjorn Helgaas
[off-list ref]; Bjorn Helgaas [off-list ref];
bjorn@helgaas.com; Kirsher, Jeffrey T [off-list ref]; David S.
Miller [off-list ref]; rjw@rjwysocki.net
Cc: Vaibhav Gupta <vaibhavgupta40@gmail.com>; Brandeburg, Jesse
[off-list ref]; intel-wired-lan@lists.osuosl.org;
netdev@vger.kernel.org; linux-kernel@vger.kernel.org; linux-kernel-
mentees@lists.linuxfoundation.org; skhan@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 <vaibhavgupta40@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 <redacted>
_______________________________________________
Linux-kernel-mentees mailing list
Linux-kernel-mentees@lists.linuxfoundation.org
https://lists.linuxfoundation.org/mailman/listinfo/linux-kernel-mentees
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help