1 /* SPDX-License-Identifier: GPL-2.0-or-later */
2 #ifndef ASM_X86_SM4_AVX_H
3 #define ASM_X86_SM4_AVX_H
5 #include <linux/types.h>
6 #include <crypto/sm4.h>
8 typedef void (*sm4_crypt_func
)(const u32
*rk
, u8
*dst
, const u8
*src
, u8
*iv
);
10 int sm4_avx_ecb_encrypt(struct skcipher_request
*req
);
11 int sm4_avx_ecb_decrypt(struct skcipher_request
*req
);
13 int sm4_cbc_encrypt(struct skcipher_request
*req
);
14 int sm4_avx_cbc_decrypt(struct skcipher_request
*req
,
15 unsigned int bsize
, sm4_crypt_func func
);
17 int sm4_avx_ctr_crypt(struct skcipher_request
*req
,
18 unsigned int bsize
, sm4_crypt_func func
);