summaryrefslogtreecommitdiffstats
path: root/sys/dev/ixgbe/if_ix.c
diff options
context:
space:
mode:
authorsmh <smh@FreeBSD.org>2016-02-11 16:54:23 +0000
committersmh <smh@FreeBSD.org>2016-02-11 16:54:23 +0000
commitfd560f49734672a8d1c7f809460d6a57c5f396c8 (patch)
tree69e431b8e597b04b6be88f4c53365a761a9bab6b /sys/dev/ixgbe/if_ix.c
parenta174c79878d5e765a8247707098daaf3b966328f (diff)
downloadFreeBSD-src-fd560f49734672a8d1c7f809460d6a57c5f396c8.zip
FreeBSD-src-fd560f49734672a8d1c7f809460d6a57c5f396c8.tar.gz
MFC r294734, r295093 & r295094 ixgbe fixes
MFC r294734 Fix ixgbe compliation with DBG 1 MFC r295093 Configure ixgbe phy & gbic power MFC r295094 Fix ixgbe flow control autoneg reporting Approved by: re (marius) Sponsored by: Multiplay
Diffstat (limited to 'sys/dev/ixgbe/if_ix.c')
-rw-r--r--sys/dev/ixgbe/if_ix.c12
1 files changed, 12 insertions, 0 deletions
diff --git a/sys/dev/ixgbe/if_ix.c b/sys/dev/ixgbe/if_ix.c
index acdef4d..4386f5d 100644
--- a/sys/dev/ixgbe/if_ix.c
+++ b/sys/dev/ixgbe/if_ix.c
@@ -582,6 +582,12 @@ ixgbe_attach(device_t dev)
if (error)
goto err_late;
+ /* Enable the optics for 82599 SFP+ fiber */
+ ixgbe_enable_tx_laser(hw);
+
+ /* Enable power to the phy. */
+ ixgbe_set_phy_power(hw, TRUE);
+
/* Setup OS specific network interface */
if (ixgbe_setup_interface(dev, adapter) != 0)
goto err_late;
@@ -1250,6 +1256,9 @@ ixgbe_init_locked(struct adapter *adapter)
device_printf(dev, "Error setting up EEE: %d\n", err);
}
+ /* Enable power to the phy. */
+ ixgbe_set_phy_power(hw, TRUE);
+
/* Config/Enable Link */
ixgbe_config_link(adapter);
@@ -3970,6 +3979,9 @@ ixgbe_setup_low_power_mode(struct adapter *adapter)
mtx_assert(&adapter->core_mtx, MA_OWNED);
+ if (!hw->wol_enabled)
+ ixgbe_set_phy_power(hw, FALSE);
+
/* Limit power management flow to X550EM baseT */
if (hw->device_id == IXGBE_DEV_ID_X550EM_X_10G_T
&& hw->phy.ops.enter_lplu) {
OpenPOWER on IntegriCloud