diff options
Diffstat (limited to 'drivers/net/tg3.c')
-rw-r--r-- | drivers/net/tg3.c | 21 |
1 files changed, 8 insertions, 13 deletions
diff --git a/drivers/net/tg3.c b/drivers/net/tg3.c index d6047bd6805d..376d8e776936 100644 --- a/drivers/net/tg3.c +++ b/drivers/net/tg3.c | |||
@@ -5828,10 +5828,14 @@ static int tg3_reset_hw(struct tg3 *tp) | |||
5828 | GRC_MODE_NO_TX_PHDR_CSUM | | 5828 | GRC_MODE_NO_TX_PHDR_CSUM | |
5829 | GRC_MODE_NO_RX_PHDR_CSUM); | 5829 | GRC_MODE_NO_RX_PHDR_CSUM); |
5830 | tp->grc_mode |= GRC_MODE_HOST_SENDBDS; | 5830 | tp->grc_mode |= GRC_MODE_HOST_SENDBDS; |
5831 | if (tp->tg3_flags & TG3_FLAG_NO_TX_PSEUDO_CSUM) | 5831 | |
5832 | tp->grc_mode |= GRC_MODE_NO_TX_PHDR_CSUM; | 5832 | /* Pseudo-header checksum is done by hardware logic and not |
5833 | if (tp->tg3_flags & TG3_FLAG_NO_RX_PSEUDO_CSUM) | 5833 | * the offload processers, so make the chip do the pseudo- |
5834 | tp->grc_mode |= GRC_MODE_NO_RX_PHDR_CSUM; | 5834 | * header checksums on receive. For transmit it is more |
5835 | * convenient to do the pseudo-header checksum in software | ||
5836 | * as Linux does that on transmit for us in all cases. | ||
5837 | */ | ||
5838 | tp->grc_mode |= GRC_MODE_NO_TX_PHDR_CSUM; | ||
5835 | 5839 | ||
5836 | tw32(GRC_MODE, | 5840 | tw32(GRC_MODE, |
5837 | tp->grc_mode | | 5841 | tp->grc_mode | |
@@ -10303,15 +10307,6 @@ static int __devinit tg3_get_invariants(struct tg3 *tp) | |||
10303 | if (tp->pci_chip_rev_id == CHIPREV_ID_5700_B0) | 10307 | if (tp->pci_chip_rev_id == CHIPREV_ID_5700_B0) |
10304 | tp->tg3_flags |= TG3_FLAG_BROKEN_CHECKSUMS; | 10308 | tp->tg3_flags |= TG3_FLAG_BROKEN_CHECKSUMS; |
10305 | 10309 | ||
10306 | /* Pseudo-header checksum is done by hardware logic and not | ||
10307 | * the offload processers, so make the chip do the pseudo- | ||
10308 | * header checksums on receive. For transmit it is more | ||
10309 | * convenient to do the pseudo-header checksum in software | ||
10310 | * as Linux does that on transmit for us in all cases. | ||
10311 | */ | ||
10312 | tp->tg3_flags |= TG3_FLAG_NO_TX_PSEUDO_CSUM; | ||
10313 | tp->tg3_flags &= ~TG3_FLAG_NO_RX_PSEUDO_CSUM; | ||
10314 | |||
10315 | /* Derive initial jumbo mode from MTU assigned in | 10310 | /* Derive initial jumbo mode from MTU assigned in |
10316 | * ether_setup() via the alloc_etherdev() call | 10311 | * ether_setup() via the alloc_etherdev() call |
10317 | */ | 10312 | */ |