From fb85d3b8124b5de5ac03bc06b17ca36c8d6b70cf Mon Sep 17 00:00:00 2001 From: Bruce Allan Date: Wed, 24 Nov 2010 06:01:30 +0000 Subject: [PATCH] --- yaml --- r: 225010 b: refs/heads/master c: cbd006cb7d4e7b76c6febf7f51e970bced132914 h: refs/heads/master v: v3 --- [refs] | 2 +- trunk/drivers/net/e1000e/ethtool.c | 7 +++++++ 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/[refs] b/[refs] index dda58121d99a..c47a79baa364 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: ed5c2b0b78e5467f7948bef92b21f3c76823f392 +refs/heads/master: cbd006cb7d4e7b76c6febf7f51e970bced132914 diff --git a/trunk/drivers/net/e1000e/ethtool.c b/trunk/drivers/net/e1000e/ethtool.c index 5c6bc6ac069c..c10dc694d733 100644 --- a/trunk/drivers/net/e1000e/ethtool.c +++ b/trunk/drivers/net/e1000e/ethtool.c @@ -1249,6 +1249,7 @@ static int e1000_integrated_phy_loopback(struct e1000_adapter *adapter) u32 ctrl_reg = 0; u32 stat_reg = 0; u16 phy_reg = 0; + s32 ret_val = 0; hw->mac.autoneg = 0; @@ -1308,7 +1309,13 @@ static int e1000_integrated_phy_loopback(struct e1000_adapter *adapter) case e1000_phy_82577: case e1000_phy_82578: /* Workaround: K1 must be disabled for stable 1Gbps operation */ + ret_val = hw->phy.ops.acquire(hw); + if (ret_val) { + e_err("Cannot setup 1Gbps loopback.\n"); + return ret_val; + } e1000_configure_k1_ich8lan(hw, false); + hw->phy.ops.release(hw); break; case e1000_phy_82579: /* Disable PHY energy detect power down */