aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--drivers/net/ethernet/intel/ixgbe/ixgbe_main.c10
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 3e26b1f9ac75..dac7c01f8332 100644
--- a/drivers/net/ethernet/intel/ixgbe/ixgbe_main.c
+++ b/drivers/net/ethernet/intel/ixgbe/ixgbe_main.c
@@ -4893,6 +4893,16 @@ static int __ixgbe_shutdown(struct pci_dev *pdev, bool *enable_wake)
4893 if (wufc) { 4893 if (wufc) {
4894 ixgbe_set_rx_mode(netdev); 4894 ixgbe_set_rx_mode(netdev);
4895 4895
4896 /*
4897 * enable the optics for both mult-speed fiber and
4898 * 82599 SFP+ fiber as we can WoL.
4899 */
4900 if (hw->mac.ops.enable_tx_laser &&
4901 (hw->phy.multispeed_fiber ||
4902 (hw->mac.ops.get_media_type(hw) == ixgbe_media_type_fiber &&
4903 hw->mac.type == ixgbe_mac_82599EB)))
4904 hw->mac.ops.enable_tx_laser(hw);
4905
4896 /* turn on all-multi mode if wake on multicast is enabled */ 4906 /* turn on all-multi mode if wake on multicast is enabled */
4897 if (wufc & IXGBE_WUFC_MC) { 4907 if (wufc & IXGBE_WUFC_MC) {
4898 fctrl = IXGBE_READ_REG(hw, IXGBE_FCTRL); 4908 fctrl = IXGBE_READ_REG(hw, IXGBE_FCTRL);