Fix wrong link speed on some sky2 network adapters (rhbz #757839)

This commit is contained in:
Chuck Ebbert 2011-12-08 20:27:18 -05:00
parent cafbe33b92
commit 4398b86860
2 changed files with 49 additions and 0 deletions

View File

@ -800,6 +800,9 @@ Patch21220: mac80211_offchannel_rework_revert.patch
Patch21225: pci-Rework-ASPM-disable-code.patch
#rhbz #757839
Patch21230: net-sky2-88e8059-fix-link-speed.patch
%endif
BuildRoot: %{_tmppath}/kernel-%{KVERREL}-root
@ -1469,6 +1472,9 @@ ApplyPatch mac80211_offchannel_rework_revert.patch
ApplyPatch pci-Rework-ASPM-disable-code.patch
#rhbz #757839
ApplyPatch net-sky2-88e8059-fix-link-speed.patch
# END OF PATCH APPLICATIONS
%endif
@ -2204,6 +2210,7 @@ fi
- Linux 3.1.5-rc2
- Drop obsolete changelog, set rcrev and gitrev to 0 so they're
less distracting.
- Fix wrong link speed on some sky2 network adapters (rhbz #757839)
* Thu Dec 08 2011 Ben Skeggs <bskeggs@redhat.com> 3.1.5-0.rc1.2
- nouveau: fix accel on GF108 and enable on GF108/GF110

View File

@ -0,0 +1,42 @@
commit 27d240fdae2808d727ad9ce48ec029731a457524
Author: stephen hemminger <shemminger@vyatta.com>
Date: Fri Nov 4 12:17:17 2011 +0000
sky2: fix regression on Yukon Optima
[ backport to 3.1 ]
Changes to support other Optima types, introduced an accidental
regression that caused 88E8059 to come up in 10Mbit/sec.
The Yukon Optima supports a reverse auto-negotiation feature that
was incorrectly setup, and not needed. The feature could be used to
allow wake-on-lan at higher speeds. But doing it correctly would require
other changes to initialization.
Reported-by: Pavel Mateja <pavel@netsafe.cz>
Signed-off-by: Stephen Hemminger <shemminger@vyatta.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
diff --git a/drivers/net/ethernet/marvell/sky2.c b/drivers/net/ethernet/marvell/sky2.c
index cbd026f..fdc6c39 100644
--- a/drivers/net/sky2.c
+++ b/drivers/net/sky2.c
@@ -366,17 +366,6 @@ static void sky2_phy_init(struct sky2_hw *hw, unsigned port)
gm_phy_write(hw, port, PHY_MARV_FE_SPEC_2, spec);
}
} else {
- if (hw->chip_id >= CHIP_ID_YUKON_OPT) {
- u16 ctrl2 = gm_phy_read(hw, port, PHY_MARV_EXT_CTRL_2);
-
- /* enable PHY Reverse Auto-Negotiation */
- ctrl2 |= 1u << 13;
-
- /* Write PHY changes (SW-reset must follow) */
- gm_phy_write(hw, port, PHY_MARV_EXT_CTRL_2, ctrl2);
- }
-
-
/* disable energy detect */
ctrl &= ~PHY_M_PC_EN_DET_MSK;