[TG3]: Add ipv6 checksum support

Support ipv6 tx csum on 5787 by setting NETIF_F_HW_CSUM.

Signed-off-by: Michael Chan <mchan@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
Michael Chan 2006-03-20 22:28:27 -08:00 committed by David S. Miller
parent 5a6f3074c2
commit 9c27dbdf64
1 changed files with 8 additions and 4 deletions

View File

@ -7871,10 +7871,10 @@ static int tg3_set_tx_csum(struct net_device *dev, u32 data)
return 0;
}
if (data)
dev->features |= NETIF_F_IP_CSUM;
if (GET_ASIC_REV(tp->pci_chip_rev_id) == ASIC_REV_5787)
ethtool_op_set_tx_hw_csum(dev, data);
else
dev->features &= ~NETIF_F_IP_CSUM;
ethtool_op_set_tx_csum(dev, data);
return 0;
}
@ -11236,7 +11236,11 @@ static int __devinit tg3_init_one(struct pci_dev *pdev,
* checksumming.
*/
if ((tp->tg3_flags & TG3_FLAG_BROKEN_CHECKSUMS) == 0) {
dev->features |= NETIF_F_SG | NETIF_F_IP_CSUM;
if (GET_ASIC_REV(tp->pci_chip_rev_id) == ASIC_REV_5787)
dev->features |= NETIF_F_HW_CSUM;
else
dev->features |= NETIF_F_IP_CSUM;
dev->features |= NETIF_F_SG;
tp->tg3_flags |= TG3_FLAG_RX_CHECKSUMS;
} else
tp->tg3_flags &= ~TG3_FLAG_RX_CHECKSUMS;