smsc9420: fix big endian rx checksum offload

The cpu_to_le16 here looks suspicious to me, I don't think we need it
because put_unaligned_le16 also does this.

I don't currently have any big endian hardware with a PCI bus available
to test on, so I haven't been able to verify this.

Signed-off-by: Steve Glendinning <steve.glendinning@smsc.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
Steve Glendinning 2009-03-20 01:14:53 -07:00 committed by David S. Miller
parent 8fd17f2e6c
commit cd7a3b75ba

View File

@ -807,7 +807,7 @@ static void smsc9420_rx_handoff(struct smsc9420_pdata *pd, const int index,
if (pd->rx_csum) {
u16 hw_csum = get_unaligned_le16(skb_tail_pointer(skb) +
NET_IP_ALIGN + packet_length + 4);
put_unaligned_le16(cpu_to_le16(hw_csum), &skb->csum);
put_unaligned_le16(hw_csum, &skb->csum);
skb->ip_summed = CHECKSUM_COMPLETE;
}