--- zzzz-none-000/linux-3.18.24/arch/mips/lib/csum_partial.S 2015-10-31 20:39:51.000000000 +0000 +++ rtl96-5690pro-762/linux-3.18.24/arch/mips/lib/csum_partial.S 2024-08-14 08:36:36.000000000 +0000 @@ -9,6 +9,9 @@ * Copyright (C) 1999 Silicon Graphics, Inc. * Copyright (C) 2007 Maciej W. Rozycki * Copyright (C) 2014 Imagination Technologies Ltd. + * + * Modified for RLX processors + * Copyright (C) 2008-2014 Tony Wu (tonywu@realtek.com) */ #include #include @@ -427,6 +430,8 @@ #define STREST STOREL #define SHIFT_DISCARD SLLV #define SHIFT_DISCARD_REVERT SRLV +#define SHIFT_START 0 +#define SHIFT_INC 8 #else #define LDFIRST LOADL #define LDREST LOADR @@ -434,6 +439,8 @@ #define STREST STORER #define SHIFT_DISCARD SRLV #define SHIFT_DISCARD_REVERT SLLV +#define SHIFT_START 8*(NBYTES-1) +#define SHIFT_INC -8 #endif #define FIRST(unit) ((unit)*NBYTES) @@ -683,13 +690,6 @@ nop .Lcopy_bytes\@: /* 0 < len < NBYTES */ -#ifdef CONFIG_CPU_LITTLE_ENDIAN -#define SHIFT_START 0 -#define SHIFT_INC 8 -#else -#define SHIFT_START 8*(NBYTES-1) -#define SHIFT_INC -8 -#endif move t2, zero # partial word li t3, SHIFT_START # shift /* use .Ll_exc_copy here to return correct sum on fault */