diff options
Diffstat (limited to 'drivers/net/ethernet/intel/ixgbe/ixgbe_main.c')
-rw-r--r-- | drivers/net/ethernet/intel/ixgbe/ixgbe_main.c | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/drivers/net/ethernet/intel/ixgbe/ixgbe_main.c b/drivers/net/ethernet/intel/ixgbe/ixgbe_main.c index 10606bdbb5ae..f3b849438b62 100644 --- a/drivers/net/ethernet/intel/ixgbe/ixgbe_main.c +++ b/drivers/net/ethernet/intel/ixgbe/ixgbe_main.c | |||
@@ -4865,6 +4865,16 @@ static int __ixgbe_shutdown(struct pci_dev *pdev, bool *enable_wake) | |||
4865 | if (wufc) { | 4865 | if (wufc) { |
4866 | ixgbe_set_rx_mode(netdev); | 4866 | ixgbe_set_rx_mode(netdev); |
4867 | 4867 | ||
4868 | /* | ||
4869 | * enable the optics for both mult-speed fiber and | ||
4870 | * 82599 SFP+ fiber as we can WoL. | ||
4871 | */ | ||
4872 | if (hw->mac.ops.enable_tx_laser && | ||
4873 | (hw->phy.multispeed_fiber || | ||
4874 | (hw->mac.ops.get_media_type(hw) == ixgbe_media_type_fiber && | ||
4875 | hw->mac.type == ixgbe_mac_82599EB))) | ||
4876 | hw->mac.ops.enable_tx_laser(hw); | ||
4877 | |||
4868 | /* turn on all-multi mode if wake on multicast is enabled */ | 4878 | /* turn on all-multi mode if wake on multicast is enabled */ |
4869 | if (wufc & IXGBE_WUFC_MC) { | 4879 | if (wufc & IXGBE_WUFC_MC) { |
4870 | fctrl = IXGBE_READ_REG(hw, IXGBE_FCTRL); | 4880 | fctrl = IXGBE_READ_REG(hw, IXGBE_FCTRL); |