igb: add basic runtime PM support
authorYan, Zheng <zheng.z.yan@intel.com>
Wed, 4 Jan 2012 20:23:37 +0000 (20:23 +0000)
committerDavid S. Miller <davem@davemloft.net>
Thu, 5 Jan 2012 18:12:03 +0000 (13:12 -0500)
commit749ab2cd127046df79084b6b9165b23491b1db5f
treefd91fc5d9907d6cffd74876c80acc386d2dd7dac
parentbdbc063129e811264cd6c311d8c2d9b95de01231
igb: add basic runtime PM support

Use the runtime power management framework to add basic runtime PM support
to the igb driver. Namely, make the driver suspend the device when the link
is off and set it up for generating a wakeup event after the link has been
detected again. This feature is disabled by default.

Based on e1000e's runtime PM code.

Changes since v1:
Don't suspend the device when shutting down the interface.
Avoid race between runtime suspending and ethtool operations.

Signed-off-by: Zheng Yan <zheng.z.yan@intel.com>
Tested-by: Aaron Brown <aaron.f.brown@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/intel/igb/igb_ethtool.c
drivers/net/ethernet/intel/igb/igb_main.c