xref: /openbmc/linux/arch/arm64/crypto/sm4-ce.h (revision 5efb685b)
1 /* SPDX-License-Identifier: GPL-2.0-or-later */
2 /*
3  * SM4 common functions for Crypto Extensions
4  * Copyright (C) 2022 Tianjia Zhang <tianjia.zhang@linux.alibaba.com>
5  */
6 
7 void sm4_ce_expand_key(const u8 *key, u32 *rkey_enc, u32 *rkey_dec,
8 		       const u32 *fk, const u32 *ck);
9 
10 void sm4_ce_crypt_block(const u32 *rkey, u8 *dst, const u8 *src);
11 
12 void sm4_ce_cbc_enc(const u32 *rkey_enc, u8 *dst, const u8 *src,
13 		    u8 *iv, unsigned int nblocks);
14 
15 void sm4_ce_cfb_enc(const u32 *rkey_enc, u8 *dst, const u8 *src,
16 		    u8 *iv, unsigned int nblocks);
17