xref: /linux/lib/raid/xor/arm/xor-neon-glue.c (revision 440d6635b20037bc9ad46b20817d7b61cef0fc1b)
10d64a24eSChristoph Hellwig // SPDX-License-Identifier: GPL-2.0-only
20d64a24eSChristoph Hellwig /*
30d64a24eSChristoph Hellwig  *  Copyright (C) 2001 Russell King
40d64a24eSChristoph Hellwig  */
5e20043b4SChristoph Hellwig #include "xor_impl.h"
6e20043b4SChristoph Hellwig #include "xor_arch.h"
70d64a24eSChristoph Hellwig 
8*80dcf0a7SChristoph Hellwig static void xor_gen_neon(void *dest, void **srcs, unsigned int src_cnt,
9*80dcf0a7SChristoph Hellwig 		unsigned int bytes)
100d64a24eSChristoph Hellwig {
110d64a24eSChristoph Hellwig 	kernel_neon_begin();
12*80dcf0a7SChristoph Hellwig 	xor_gen_neon_inner(dest, srcs, src_cnt, bytes);
130d64a24eSChristoph Hellwig 	kernel_neon_end();
140d64a24eSChristoph Hellwig }
150d64a24eSChristoph Hellwig 
160d64a24eSChristoph Hellwig struct xor_block_template xor_block_neon = {
170d64a24eSChristoph Hellwig 	.name		= "neon",
18*80dcf0a7SChristoph Hellwig 	.xor_gen	= xor_gen_neon,
190d64a24eSChristoph Hellwig };
20