1 /* SPDX-License-Identifier: GPL-2.0 */ 2 #ifndef _XOR_H 3 #define _XOR_H 4 5 #define MAX_XOR_BLOCKS 4 6 7 extern void xor_blocks(unsigned int count, unsigned int bytes, 8 void *dest, void **srcs); 9 10 struct xor_block_template { 11 struct xor_block_template *next; 12 const char *name; 13 int speed; 14 void (*do_2)(unsigned long, unsigned long *, unsigned long *); 15 void (*do_3)(unsigned long, unsigned long *, unsigned long *, 16 unsigned long *); 17 void (*do_4)(unsigned long, unsigned long *, unsigned long *, 18 unsigned long *, unsigned long *); 19 void (*do_5)(unsigned long, unsigned long *, unsigned long *, 20 unsigned long *, unsigned long *, unsigned long *); 21 }; 22 23 #endif 24