diff options
author | Michael Chan <mchan@broadcom.com> | 2006-03-27 23:17:27 -0800 |
---|---|---|
committer | David S. Miller <davem@sunset.davemloft.net> | 2006-03-28 17:02:37 -0800 |
commit | ff18ff023495a4f1ce7c65e7c376c4720eccf4da (patch) | |
tree | ef08dc52d54d7b50770be1497e4c3aed5a957dc1 | |
parent | 6728a8e2e180b96ac7940dd4d766c52f8e177717 (diff) | |
download | linux-ff18ff023495a4f1ce7c65e7c376c4720eccf4da.tar.bz2 |
[TG3]: Fix PHY loopback on 5700
Fix PHY loopback failure on some 5700 devices.
Signed-off-by: Michael Chan <mchan@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
-rw-r--r-- | drivers/net/tg3.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/drivers/net/tg3.c b/drivers/net/tg3.c index 0fafc5264627..3c5c9fafe9c8 100644 --- a/drivers/net/tg3.c +++ b/drivers/net/tg3.c @@ -8399,8 +8399,11 @@ static int tg3_run_loopback(struct tg3 *tp, int loopback_mode) } mac_mode = (tp->mac_mode & ~MAC_MODE_PORT_MODE_MASK) | MAC_MODE_LINK_POLARITY | MAC_MODE_PORT_MODE_GMII; - if ((tp->phy_id & PHY_ID_MASK) == PHY_ID_BCM5401) + if ((tp->phy_id & PHY_ID_MASK) == PHY_ID_BCM5401) { mac_mode &= ~MAC_MODE_LINK_POLARITY; + tg3_writephy(tp, MII_TG3_EXT_CTRL, + MII_TG3_EXT_CTRL_LNK3_LED_MODE); + } tw32(MAC_MODE, mac_mode); } else |