diff options
author | Matt Carlson <mcarlson@broadcom.com> | 2010-06-05 17:24:31 +0000 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2010-06-06 17:55:59 -0700 |
commit | b1d0521059789a138d19c4f940d6eca7d620a6eb (patch) | |
tree | fa0cba1674ba1592476aa5940cf8ada89f018158 /drivers/net/tg3.c | |
parent | f92d9dc1504a964acfe07e8036fa30dcef22d343 (diff) |
tg3: Avoid tx lockups on 5755+ devices
In certain edge conditions, internal tx resources can get corrupted.
This patch enables a bit that will fix the problem.
Signed-off-by: Matt Carlson <mcarlson@broadcom.com>
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 | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/net/tg3.c b/drivers/net/tg3.c index bd331174550..057e8ebc1b2 100644 --- a/drivers/net/tg3.c +++ b/drivers/net/tg3.c @@ -8214,6 +8214,9 @@ static int tg3_reset_hw(struct tg3 *tp, int reset_phy) } tp->tx_mode = TX_MODE_ENABLE; + if ((tp->tg3_flags3 & TG3_FLG3_5755_PLUS) || + GET_ASIC_REV(tp->pci_chip_rev_id) == ASIC_REV_5906) + tp->tx_mode |= TX_MODE_MBUF_LOCKUP_FIX; tw32_f(MAC_TX_MODE, tp->tx_mode); udelay(100); |