/* * Copyright 2004-2009 Analog Devices Inc. * akbar.hussain@lineo.com * * Licensed under the GPL-2 or later. */ #ifndef _BFIN_CHECKSUM_H #define _BFIN_CHECKSUM_H /* * computes the checksum of the TCP/UDP pseudo-header * returns a 16-bit checksum, already complemented */ static inline __wsum __csum_tcpudp_nofold(__be32 saddr, __be32 daddr, __u32 len, __u8 proto, __wsum sum) { unsigned int carry; __asm__ ("%0 = %0 + %2;\n\t" "CC = AC0;\n\t" "%1 = CC;\n\t" "%0 = %0 + %1;\n\t" "%0 = %0 + %3;\n\t" "CC = AC0;\n\t" "%1 = CC;\n\t" "%0 = %0 + %1;\n\t" "%0 = %0 + %4;\n\t" "CC = AC0;\n\t" "%1 = CC;\n\t" "%0 = %0 + %1;\n\t" : "=d" (sum), "=&d" (carry) : "d" (daddr), "d" (saddr), "d" ((len + proto) << 8), "0"(sum) : "CC"); return (sum); } #define csum_tcpudp_nofold __csum_tcpudp_nofold #include #endif form'>
net-next plumbingsTobias Klauser
summaryrefslogtreecommitdiff
path: root/arch/hexagon/kernel/traps.c
diff options
context:
space:
mode:
authorTobias Klauser <tklauser@distanz.ch>2016-10-20 15:44:19 +0200
committerTobias Klauser <tklauser@distanz.ch>2017-02-15 10:34:18 +0100
commit5db4992d8f040b8d8db0b86d42806e0c417f7ccf (patch)
tree5b06e952af482d45f3ade64e77824662e34b7fa2 /arch/hexagon/kernel/traps.c
parent370ebb0ef6255132373ed35d13e7b1d8d2eb7003 (diff)
usbnet: pegasus: Use net_device_stats from struct net_devicends-private-remove
Instead of using a private copy of struct net_device_stats in struct pegasus, use stats from struct net_device. Also remove the now unnecessary .ndo_get_stats function. Cc: Petko Manolov <petkan@nucleusys.com> Cc: linux-usb@vger.kernel.org Signed-off-by: Tobias Klauser <tklauser@distanz.ch>
Diffstat (limited to 'arch/hexagon/kernel/traps.c')