diff options
author | Nithin Sujir <nsujir@broadcom.com> | 2013-07-29 16:58:39 -0400 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2013-07-30 02:38:52 -0400 |
commit | 378b72c873b4828cde5b4bc85c7029d98f8f1df4 (patch) | |
tree | 8a329c23cf5a0671b223372b29a6a6c115e72fe7 /drivers/net/ethernet/broadcom/tg3.c | |
parent | 92e6457d4cf68ef69bc4f98330c93e198df06a43 (diff) |
tg3: Fix UDP fragments treated as RMCP
The 5762 devices sometimes incorrectly treat udp fragments as RMCP
packets and route to the APE. This patch sets the RX_MODE_IPV4_FRAG_FIX
bit for these devices which enables the proper behaviour.
Signed-off-by: Nithin Nayak Sujir <nsujir@broadcom.com>
Signed-off-by: Michael Chan <mchan@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/ethernet/broadcom/tg3.c')
-rw-r--r-- | drivers/net/ethernet/broadcom/tg3.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/net/ethernet/broadcom/tg3.c b/drivers/net/ethernet/broadcom/tg3.c index f077c8f5baa1..6e59ef1ba13e 100644 --- a/drivers/net/ethernet/broadcom/tg3.c +++ b/drivers/net/ethernet/broadcom/tg3.c | |||
@@ -10420,6 +10420,9 @@ static int tg3_reset_hw(struct tg3 *tp, bool reset_phy) | |||
10420 | if (tg3_flag(tp, 5755_PLUS)) | 10420 | if (tg3_flag(tp, 5755_PLUS)) |
10421 | tp->rx_mode |= RX_MODE_IPV6_CSUM_ENABLE; | 10421 | tp->rx_mode |= RX_MODE_IPV6_CSUM_ENABLE; |
10422 | 10422 | ||
10423 | if (tg3_asic_rev(tp) == ASIC_REV_5762) | ||
10424 | tp->rx_mode |= RX_MODE_IPV4_FRAG_FIX; | ||
10425 | |||
10423 | if (tg3_flag(tp, ENABLE_RSS)) | 10426 | if (tg3_flag(tp, ENABLE_RSS)) |
10424 | tp->rx_mode |= RX_MODE_RSS_ENABLE | | 10427 | tp->rx_mode |= RX_MODE_RSS_ENABLE | |
10425 | RX_MODE_RSS_ITBL_HASH_BITS_7 | | 10428 | RX_MODE_RSS_ITBL_HASH_BITS_7 | |