Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 97b290b5 authored by Paul Martin's avatar Paul Martin Committed by Ralf Baechle
Browse files

MIPS: Octeon: Fix to IP checksum offloading in Little Endian



When hardware checksum generation is switched on the checksum
generation was only being signalled to the hardware correctly
in Big Endian mode.

Signed-off-by: default avatarPaul Martin <paul.martin@codethink.co.uk>
Cc: linux-mips@linux-mips.org
Patchwork: https://patchwork.linux-mips.org/patch/9634/


Signed-off-by: default avatarRalf Baechle <ralf@linux-mips.org>
parent d2a948d2
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -413,7 +413,7 @@ int cvm_oct_xmit(struct sk_buff *skb, struct net_device *dev)
	/* Check if we can use the hardware checksumming */
	if (USE_HW_TCPUDP_CHECKSUM && (skb->protocol == htons(ETH_P_IP)) &&
	    (ip_hdr(skb)->version == 4) && (ip_hdr(skb)->ihl == 5) &&
	    ((ip_hdr(skb)->frag_off == 0) || (ip_hdr(skb)->frag_off == 1 << 14))
	    ((ip_hdr(skb)->frag_off == 0) || (ip_hdr(skb)->frag_off == htons(1 << 14)))
	    && ((ip_hdr(skb)->protocol == IPPROTO_TCP)
		|| (ip_hdr(skb)->protocol == IPPROTO_UDP))) {
		/* Use hardware checksum calc */