riscv: Add checksum library
authorCharlie Jenkins <charlie@rivosinc.com>
Mon, 8 Jan 2024 23:57:05 +0000 (15:57 -0800)
committerPalmer Dabbelt <palmer@rivosinc.com>
Thu, 18 Jan 2024 01:52:32 +0000 (17:52 -0800)
commita04c192eabfb76824d00f1b4cd0f25844a59d0f0
tree4958cc44bee3652ebefe01c374dd058151d58b36
parente11e367e9fe57164ea609807ed27184c85263355
riscv: Add checksum library

Provide a 32 and 64 bit version of do_csum. When compiled for 32-bit
will load from the buffer in groups of 32 bits, and when compiled for
64-bit will load in groups of 64 bits.

Additionally provide riscv optimized implementation of csum_ipv6_magic.

Signed-off-by: Charlie Jenkins <charlie@rivosinc.com>
Acked-by: Conor Dooley <conor.dooley@microchip.com>
Reviewed-by: Xiao Wang <xiao.w.wang@intel.com>
Link: https://lore.kernel.org/r/20240108-optimize_checksum-v15-4-1c50de5f2167@rivosinc.com
Signed-off-by: Palmer Dabbelt <palmer@rivosinc.com>
arch/riscv/include/asm/checksum.h
arch/riscv/lib/Makefile
arch/riscv/lib/csum.c [new file with mode: 0644]