summaryrefslogtreecommitdiffstats
path: root/drivers/net/ethernet/intel/e1000e/mac.h
diff options
context:
space:
mode:
authorKonstantin Khlebnikov <khlebnikov@openvz.org>2013-03-05 09:43:04 +0000
committerJeff Kirsher <jeffrey.t.kirsher@intel.com>2013-03-07 02:48:30 -0800
commit66148babe728f3e00e13c56f6b0ecf325abd80da (patch)
treee4d042ecfb7360f651a7fe40fea71f38ff4b6a65 /drivers/net/ethernet/intel/e1000e/mac.h
parent4e0855dff094b0d56d6b5b271e0ce7851cc1e063 (diff)
downloadtalos-op-linux-66148babe728f3e00e13c56f6b0ecf325abd80da.tar.gz
talos-op-linux-66148babe728f3e00e13c56f6b0ecf325abd80da.zip
e1000e: fix runtime power management transitions
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>
Diffstat (limited to 'drivers/net/ethernet/intel/e1000e/mac.h')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud