1 /* SPDX-License-Identifier: BSD-3-Clause 2 * Copyright(C) 2019 Marvell International Ltd. 3 */ 4 5 #include "nitrox_sym_capabilities.h" 6 7 static const struct rte_cryptodev_capabilities nitrox_capabilities[] = { 8 { /* SHA1 HMAC */ 9 .op = RTE_CRYPTO_OP_TYPE_SYMMETRIC, 10 {.sym = { 11 .xform_type = RTE_CRYPTO_SYM_XFORM_AUTH, 12 {.auth = { 13 .algo = RTE_CRYPTO_AUTH_SHA1_HMAC, 14 .block_size = 64, 15 .key_size = { 16 .min = 1, 17 .max = 64, 18 .increment = 1 19 }, 20 .digest_size = { 21 .min = 1, 22 .max = 20, 23 .increment = 1 24 }, 25 .iv_size = { 0 } 26 }, } 27 }, } 28 }, 29 { /* SHA224 HMAC */ 30 .op = RTE_CRYPTO_OP_TYPE_SYMMETRIC, 31 {.sym = { 32 .xform_type = RTE_CRYPTO_SYM_XFORM_AUTH, 33 {.auth = { 34 .algo = RTE_CRYPTO_AUTH_SHA224_HMAC, 35 .block_size = 64, 36 .key_size = { 37 .min = 1, 38 .max = 64, 39 .increment = 1 40 }, 41 .digest_size = { 42 .min = 1, 43 .max = 28, 44 .increment = 1 45 }, 46 .iv_size = { 0 } 47 }, } 48 }, } 49 }, 50 { /* SHA256 HMAC */ 51 .op = RTE_CRYPTO_OP_TYPE_SYMMETRIC, 52 {.sym = { 53 .xform_type = RTE_CRYPTO_SYM_XFORM_AUTH, 54 {.auth = { 55 .algo = RTE_CRYPTO_AUTH_SHA256_HMAC, 56 .block_size = 64, 57 .key_size = { 58 .min = 1, 59 .max = 64, 60 .increment = 1 61 }, 62 .digest_size = { 63 .min = 1, 64 .max = 32, 65 .increment = 1 66 }, 67 .iv_size = { 0 } 68 }, } 69 }, } 70 }, 71 { /* AES CBC */ 72 .op = RTE_CRYPTO_OP_TYPE_SYMMETRIC, 73 {.sym = { 74 .xform_type = RTE_CRYPTO_SYM_XFORM_CIPHER, 75 {.cipher = { 76 .algo = RTE_CRYPTO_CIPHER_AES_CBC, 77 .block_size = 16, 78 .key_size = { 79 .min = 16, 80 .max = 32, 81 .increment = 8 82 }, 83 .iv_size = { 84 .min = 16, 85 .max = 16, 86 .increment = 0 87 } 88 }, } 89 }, } 90 }, 91 92 RTE_CRYPTODEV_END_OF_CAPABILITIES_LIST() 93 }; 94 95 const struct rte_cryptodev_capabilities * 96 nitrox_get_sym_capabilities(void) 97 { 98 return nitrox_capabilities; 99 } 100