xref: /dpdk/drivers/crypto/ipsec_mb/pmd_chacha_poly_priv.h (revision 796de0616c326c4b6e9a9fd6b0a00584b366460d)
1 /* SPDX-License-Identifier: BSD-3-Clause
2  * Copyright(c) 2021 Intel Corporation
3  */
4 
5 #ifndef _PMD_CHACHA_POLY_PRIV_H_
6 #define _PMD_CHACHA_POLY_PRIV_H_
7 
8 #include "ipsec_mb_private.h"
9 
10 #define CHACHA20_POLY1305_DIGEST_LENGTH 16
11 
12 static const
13 struct rte_cryptodev_capabilities chacha20_poly1305_capabilities[] = {
14 	{/* CHACHA20-POLY1305 */
15 	    .op = RTE_CRYPTO_OP_TYPE_SYMMETRIC,
16 	    {.sym = {
17 			.xform_type = RTE_CRYPTO_SYM_XFORM_AEAD,
18 		    {.aead = {
19 				.algo = RTE_CRYPTO_AEAD_CHACHA20_POLY1305,
20 				.block_size = 64,
21 				.key_size = {
22 					.min = 32,
23 					.max = 32,
24 					.increment = 0},
25 				.digest_size = {
26 					.min = 16,
27 					.max = 16,
28 					.increment = 0},
29 				.aad_size = {
30 					.min = 0,
31 					.max = 240,
32 					.increment = 1},
33 				.iv_size = {
34 					.min = 12,
35 					.max = 12,
36 					.increment = 0},
37 			    },
38 			}
39 		},}
40 	},
41 	RTE_CRYPTODEV_END_OF_CAPABILITIES_LIST()
42 };
43 
44 uint8_t pmd_driver_id_chacha20_poly1305;
45 
46 #endif /* _PMD_CHACHA_POLY_PRIV_H_ */
47