Re: [PATCH RESEND 2/3] e1000e: fix runtime power managementtransitions

From: Jeff Kirsher
Date: Mon Mar 04 2013 - 20:34:57 EST


On Mon, 2013-02-25 at 09:19 +0400, Konstantin Khlebnikov wrote:
> This patch removes redundant actions from driver and fixes its
> interaction
> with actions in pci-bus runtime power management code.
>
> It removes pci_save_state() from __e1000_shutdown() for normal
> adapters,
> PCI bus callbacks pci_pm_*() will do all this for us. Now
> __e1000_shutdown()
> switches to D3-state only quad-port adapters, because they needs quirk
> for
> clearing false-positive error from downsteam pci-e port.
>
> pci_save_state() now called after clearing bus-master bit, thus
> __e1000_resume()
> and e1000_io_slot_reset() must set it back after restoring
> configuration space.
>
> This patch set get_link_status before calling pm_runtime_put() in
> e1000_open()
> to allow e1000_idle() get real link status and schedule first runtime
> suspend.
>
> This patch also enables wakeup for device if management mode is
> enabled
> (like for WoL) as result pci_prepare_to_sleep() would setup wakeup
> without
> special actions like custom 'enable_wakeup' sign.
>
> Signed-off-by: Konstantin Khlebnikov <khlebnikov@xxxxxxxxxx>
> Acked-by: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx>
> Cc: e1000-devel@xxxxxxxxxxxxxxxxxxxxx
> Cc: Jeff Kirsher <jeffrey.t.kirsher@xxxxxxxxx>
> Cc: Bruce Allan <bruce.w.allan@xxxxxxxxx>
> ---
> drivers/net/ethernet/intel/e1000e/netdev.c | 78
> ++++++----------------------
> 1 file changed, 18 insertions(+), 60 deletions(-)

I have added this patch to my e1000e patch queue.

Attachment: signature.asc
Description: This is a digitally signed message part