diff options
author | Matt Carlson <mcarlson@broadcom.com> | 2009-11-02 17:23:27 +0300 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2009-11-03 10:39:00 +0300 |
commit | 92c6b8d16a36df3f28b2537bed2a56491fb08f11 (patch) | |
tree | 13f89b031c7c82163233963c24bfe20312ba901e /drivers/net/tg3.h | |
parent | 0e1406dd404ce55dbe8d68b4b5e2aed7e5c75fdb (diff) | |
download | linux-92c6b8d16a36df3f28b2537bed2a56491fb08f11.tar.xz |
tg3: Fix 5906 transmit hangs
The 5906 has trouble with fragments that are less than 8 bytes in size.
This patch works around the problem by pivoting the 5906's transmit
routine to tg3_start_xmit_dma_bug() and introducing a new SHORT_DMA_BUG
flag that enables code to detect and react to the problematic condition.
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.h')
-rw-r--r-- | drivers/net/tg3.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/net/tg3.h b/drivers/net/tg3.h index b603810b4e9b..a5568a149748 100644 --- a/drivers/net/tg3.h +++ b/drivers/net/tg3.h @@ -2761,6 +2761,7 @@ struct tg3 { #define TG3_FLG3_ENABLE_RSS 0x00020000 #define TG3_FLG3_4G_DMA_BNDRY_BUG 0x00080000 #define TG3_FLG3_40BIT_DMA_LIMIT_BUG 0x00100000 +#define TG3_FLG3_SHORT_DMA_BUG 0x00200000 struct timer_list timer; u16 timer_counter; |