diff options
author | Michael Chan <mchan@broadcom.com> | 2006-03-28 02:17:27 -0500 |
---|---|---|
committer | David S. Miller <davem@sunset.davemloft.net> | 2006-03-28 20:02:37 -0500 |
commit | ff18ff023495a4f1ce7c65e7c376c4720eccf4da (patch) | |
tree | ef08dc52d54d7b50770be1497e4c3aed5a957dc1 /drivers/net/tg3.c | |
parent | 6728a8e2e180b96ac7940dd4d766c52f8e177717 (diff) |
[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>
Diffstat (limited to 'drivers/net/tg3.c')
-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) | |||
8399 | } | 8399 | } |
8400 | mac_mode = (tp->mac_mode & ~MAC_MODE_PORT_MODE_MASK) | | 8400 | mac_mode = (tp->mac_mode & ~MAC_MODE_PORT_MODE_MASK) | |
8401 | MAC_MODE_LINK_POLARITY | MAC_MODE_PORT_MODE_GMII; | 8401 | MAC_MODE_LINK_POLARITY | MAC_MODE_PORT_MODE_GMII; |
8402 | if ((tp->phy_id & PHY_ID_MASK) == PHY_ID_BCM5401) | 8402 | if ((tp->phy_id & PHY_ID_MASK) == PHY_ID_BCM5401) { |
8403 | mac_mode &= ~MAC_MODE_LINK_POLARITY; | 8403 | mac_mode &= ~MAC_MODE_LINK_POLARITY; |
8404 | tg3_writephy(tp, MII_TG3_EXT_CTRL, | ||
8405 | MII_TG3_EXT_CTRL_LNK3_LED_MODE); | ||
8406 | } | ||
8404 | tw32(MAC_MODE, mac_mode); | 8407 | tw32(MAC_MODE, mac_mode); |
8405 | } | 8408 | } |
8406 | else | 8409 | else |