Branch data Line data Source code
1 : : /* SPDX-License-Identifier: BSD-3-Clause
2 : : * Copyright 2021-2024 Advanced Micro Devices, Inc.
3 : : */
4 : :
5 : : #include <rte_cryptodev.h>
6 : :
7 : : #include "ionic_crypto.h"
8 : :
9 : : static const struct rte_cryptodev_capabilities iocpt_sym_caps[] = {
10 : : { /* AES GCM */
11 : : .op = RTE_CRYPTO_OP_TYPE_SYMMETRIC,
12 : : {.sym = {
13 : : .xform_type = RTE_CRYPTO_SYM_XFORM_AEAD,
14 : : {.aead = {
15 : : .algo = RTE_CRYPTO_AEAD_AES_GCM,
16 : : .block_size = 16,
17 : : .key_size = {
18 : : .min = 16,
19 : : .max = 32,
20 : : .increment = 16
21 : : },
22 : : .digest_size = {
23 : : .min = 16,
24 : : .max = 16,
25 : : .increment = 0
26 : : },
27 : : .aad_size = {
28 : : .min = 0,
29 : : .max = 1024,
30 : : .increment = 1
31 : : },
32 : : .iv_size = {
33 : : .min = 12,
34 : : .max = 12,
35 : : .increment = 0
36 : : }
37 : : }, }
38 : : }, }
39 : : },
40 : : RTE_CRYPTODEV_END_OF_CAPABILITIES_LIST()
41 : : };
42 : :
43 : : static const struct rte_cryptodev_capabilities iocpt_asym_caps[] = {
44 : : /* None */
45 : : RTE_CRYPTODEV_END_OF_CAPABILITIES_LIST()
46 : : };
47 : :
48 : : const struct rte_cryptodev_capabilities *
49 : 0 : iocpt_get_caps(uint64_t flags)
50 : : {
51 [ # # ]: 0 : if (flags & RTE_CRYPTODEV_FF_ASYMMETRIC_CRYPTO)
52 : : return iocpt_asym_caps;
53 : : else
54 : 0 : return iocpt_sym_caps;
55 : : }
|