Re: [ 094/136 ] e1000e: fix runtime power management transitions

Konstantin Khlebnikov
2013-05-18T05:35:46Z

Steven Rostedt wrote:
> 3.6.11.4 stable review patch.
> If anyone has any objections, please let me know.

I don't think that 3.6.y needs this. That was fix for problem which appeared
in 3.8 after some changes in PCI power management code. Probably it depends
on these changes. If no one complains about problems we should leave it as is.

>
> ------------------
>
> From: Konstantin Khlebnikov<khlebnikov@openvz.org>
>
> [ Upstream commit 66148babe728f3e00e13c56f6b0ecf325abd80da ]
>
> 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.
>
> Cc: Bruce Allan<bruce.w.allan@intel.com>
> Signed-off-by: Konstantin Khlebnikov<khlebnikov@openvz.org>
> Acked-by: Rafael J. Wysocki<rafael.j.wysocki@intel.com>
> Tested-by: Borislav Petkov<bp@suse.de>
> Tested-by: Aaron Brown<aaron.f.brown@intel.com>
> Signed-off-by: Jeff Kirsher<jeffrey.t.kirsher@intel.com>
> Signed-off-by: Steven Rostedt<rostedt@goodmis.org>