From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 72399A0C4D; Wed, 21 Jul 2021 09:42:34 +0200 (CEST) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id EF1FF4111A; Wed, 21 Jul 2021 09:42:24 +0200 (CEST) Received: from EUR05-VI1-obe.outbound.protection.outlook.com (mail-vi1eur05on2070.outbound.protection.outlook.com [40.107.21.70]) by mails.dpdk.org (Postfix) with ESMTP id 9EB4D410E1 for ; Wed, 21 Jul 2021 09:42:21 +0200 (CEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=gj8V4+CjLhhDBY6VzQbeABrE6RlKZ/7JJNLyy5I8W0to5E9kZbAlbWOr0CzD4u9y4dMzqMdES+X4zlZfIgfEzGqC5eC58+TejomF3aE7c43vvBZQdZz7FJrH4c2GvFmYUH/b9frTTLY2B3wJ4tVCsS19m4Xf3MXUaaFvz2HeOfADWHoagYVa1ZDl+ajs6L/g0PpIPQTple2cf75M1RB/4dBwoloalNxhYsyRKPzyNEgLCa6vKQOo8qUGoivrMULAN5IPlRURCBa9eUln7MJTWKfRbAcFdOQqxKjugE2qq0rYjcavHYxur/d3DSJjxuRM5bWHtPDsHa4As1m9dnQCXQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=iZt6LmisG8cVDtOf+H+IMogSeNCzlar/cn0C4cdEQ5E=; b=HnKGI66zyaGXlPXmtzACwpfMS8j4Xkc51CtSEO82I1wR2FyC0uSr6ZVTWpwuuRHFN6Hx5y+7GQzFVWkuthBSWGn6t/6F5vhWBCB3eIwGTTCFSJh+F1W6/EYQoUtz2ZRIclnTJ8i4b4kvz1UTEWAMAp+7W0dy8qGFOMNQjL2/DNWjEd1HIucR2sZs+d6GWJ7q0YCt8yHDWBlmGqzt/sEiKNy9dAWgRzz3tM5ZzwVeqQ70ZJsPUqqws9vONlupNNgc/ZXgdSziB40SJEvgNgU+1Mtd2UDHypMCpXv1gKssRpp1LCAGcUWhRaS4ON3TJO7JXm//L5ZPpwxk272tF9i5dA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=nxp.com; dmarc=pass action=none header.from=nxp.com; dkim=pass header.d=nxp.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nxp.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=iZt6LmisG8cVDtOf+H+IMogSeNCzlar/cn0C4cdEQ5E=; b=D8x3JlWtwfDlB+7cemhHV6jh6MQfzBQoHS8awOk5xjtyhgD5X7aFIxpUx/NBLd9hbGlkdxBWZEL27HEN2ihOShoHCadtB8cdaogRjcY7oCm2dkXD0o2pfjECiA04NmD/ZSc9hXMLr2/mCV34zOGYv7sWj05C1OBcgL6heTSK/5Y= Authentication-Results: dpdk.org; dkim=none (message not signed) header.d=none;dpdk.org; dmarc=none action=none header.from=nxp.com; Received: from DU2PR04MB8630.eurprd04.prod.outlook.com (2603:10a6:10:2dd::15) by DU2PR04MB8823.eurprd04.prod.outlook.com (2603:10a6:10:2e2::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4331.24; Wed, 21 Jul 2021 07:42:20 +0000 Received: from DU2PR04MB8630.eurprd04.prod.outlook.com ([fe80::f483:9bb1:cde3:8a28]) by DU2PR04MB8630.eurprd04.prod.outlook.com ([fe80::f483:9bb1:cde3:8a28%6]) with mapi id 15.20.4331.034; Wed, 21 Jul 2021 07:42:20 +0000 From: Hemant Agrawal To: dev@dpdk.org Cc: gakhil@marvell.com, Gagandeep Singh Date: Wed, 21 Jul 2021 13:09:18 +0530 Message-Id: <20210721073920.21893-3-hemant.agrawal@nxp.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20210721073920.21893-1-hemant.agrawal@nxp.com> References: <20210721073920.21893-1-hemant.agrawal@nxp.com> Content-Type: text/plain X-ClientProxiedBy: SG2PR06CA0240.apcprd06.prod.outlook.com (2603:1096:4:ac::24) To DU2PR04MB8630.eurprd04.prod.outlook.com (2603:10a6:10:2dd::15) MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 Received: from dpdk-xeon.ap.freescale.net (92.120.0.67) by SG2PR06CA0240.apcprd06.prod.outlook.com (2603:1096:4:ac::24) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4331.21 via Frontend Transport; Wed, 21 Jul 2021 07:42:19 +0000 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: b4250076-45a8-4449-51bf-08d94c1b122d X-MS-TrafficTypeDiagnostic: DU2PR04MB8823: X-MS-Exchange-Transport-Forked: True X-Microsoft-Antispam-PRVS: X-MS-Oob-TLC-OOBClassifiers: OLM:4502; X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: JbnxXkg8mwrJ1qRmB9tC+xsVYMY54DoFOdmOSxkoNalhz98034OEgGaV3GmWEB9JLFVlLrvrah4JeITqhEHZTEOdO3nCyjwqtWqNeSbqDrdKEFYA8f8wgplGdpm4J7/s8bI3DNXp4mO78GwywDszNi9cQRJsqf+6NG3kXXZvw4o5f8yB93KssYhhzvAEbi9ixBuTHxk89Co2nDTkcIGJEyyyUTA3UavJz+u7X14OzrCUgrP4agMv3qp1dlcGvQNy1OdoGdpJfDB4F4ZlihXOvuU3j47LU8FLQXVnukNqMCY3BxfLfEtOMe06UcaLx2BZ53tB6DTDQxYW2KTHPUnP4sExB4v5yTyYzZ38DbgBZaQuWnVgLNBrFUpTx4yYlleXgQ7bNXpZMzprI/x3KUonqGN7VqMnHTrHbHpakbKCrrvPoGmagPLpTZp3y8Xe23LlYxry70OJcErzgYsNrckGENBeoemlOAUJsyXQY7fAM2Im/puoF7eqreUcLh2sxzLtC8h+gdT634ycoV/0Ph/FSteWUMcQBMXxSkrIGLToxUcXQl6DgSTMi1HW7kZ184Nadg3zgUVjyTRl65DGVOfjbuZ6cFrDsSWVNC4UpM4EWg3hipJBI0Wz4yv8QcUk5NExkN7h78xAeB1kfbOwgksHxlpdMyJHfUqP3GQeaqk1r6864MIv46ts5/dW0SkutifB+znFLPsuloMXtuiNEgYiCg== X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:DU2PR04MB8630.eurprd04.prod.outlook.com; PTR:; CAT:NONE; SFS:(4636009)(396003)(136003)(366004)(346002)(39860400002)(376002)(26005)(5660300002)(83380400001)(6506007)(2906002)(8676002)(956004)(44832011)(186003)(4326008)(2616005)(478600001)(38100700002)(38350700002)(36756003)(6512007)(52116002)(316002)(6486002)(8936002)(86362001)(66946007)(66476007)(66556008)(6916009)(1076003); DIR:OUT; SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?TKofGLM1aLAjBLRSGtqOinsTMU10D+Y9i0SwFfHEtN1g9UcDg48txWErYts4?= =?us-ascii?Q?iqH/sV2TA13qlbmG5uvJTh2vKYbh/HqM+hFaQJNhfAiKaBXTvyI/4pWlJaJ4?= =?us-ascii?Q?8GYxSU0n9u1SwpMuJnc6kGnRfk9+9Fx3NSfbbPOc3vua/hOHckn3oHpSgd9B?= =?us-ascii?Q?cocVcQt0RpqW00d//bYvIntfMTnhXp3J2hED7yubMnbKvvFZwUQy0x1UwUU5?= =?us-ascii?Q?rHk9drv3hDDUoDsAPCR+8rP+m3bL/y8IuDp8+Pgc/b3lC7P/BugrehzAd/2l?= =?us-ascii?Q?xOpQ8wKT2iEjgqX6zUGK11YeMqWUVtApPRJimIaZIx4Vb0tirGdNhWZg+p9y?= =?us-ascii?Q?iqGkEppigJBDf92AmfoelOm8GwGC4wpY7cxBpp2Roq/DEsRxVRy+QVTYmpYO?= =?us-ascii?Q?fY7neGW0X8inwl7CJmwpXOrZvwCMUfEWfUtpaL81DRpetqJpqKS3WGE683rd?= =?us-ascii?Q?8Y+mgrBvXr4dJiK2AmgNjrCumsAQAs2hXf9ahh1LNt+DUYj+Wp1XzVcDght2?= =?us-ascii?Q?Vyl8EKf+hbFdCaY9Js438Lz1O7tXld56ss8JWN2caCN21glaEFeYBmaOmLPh?= =?us-ascii?Q?Fc0knNKE0Kyujk+cAowBtWzhFnlmZnp5+AXbcnE2CL6rXMVTyeU9VcXz4v+7?= =?us-ascii?Q?qiMlsBtATuh+cTXS9tDmT328PJimPJnSSE40FS5IgaZWaFNZRJPybYThV34V?= =?us-ascii?Q?l9WbkNK0jw4BPzueeIMIA50GNTB4HsW35zSNQK5iPBKJL1RwNbaJ6cll7ITr?= =?us-ascii?Q?ob6xTfauC/Z8JSnRjVTbXHbaCwx4LJj8DwloPFK8hEZkbqeD8GirVl7C/ded?= =?us-ascii?Q?gP+4jK+dYZo3QWWgFK0kxCj8mreSdpq+s/fci4KZ+KvC/rilzFIYluGVolBn?= =?us-ascii?Q?vxR2Q6ga1Cxr+L99on0ICcxOquobhu6vGZjfy/pW5wpyrJ2Kq0W8saXzlz2F?= =?us-ascii?Q?XXAZRIlIUM0OXPN+8dXVPWD2jtbDca6H7VmokyG1VWVi/ODMwpC2sI4LgJR6?= =?us-ascii?Q?TnPihy5tGHbFGkGxNvvADzeH56rwirBRWu6G4ByRExuUXt0or0v00J4S4tYy?= =?us-ascii?Q?1PHjwX828/9FZJmSdt7aLEEJZ3ZfCHNA5U4/hUQyn08+nsI8ILzs7BZ+02S7?= =?us-ascii?Q?bJy0f71L/eQCfahSlfucbnxLMfMqNJrforihsl3OKU+IEAHMDWYWzbz7Dll+?= =?us-ascii?Q?BcrZB2rWQ4RmO4TT6jzGfYGak6Bz+KqPXoS8iUcZuMjXtOT65QtO2QGR7RvR?= =?us-ascii?Q?0THw698KuLYZxl1xYblzvdSHK5QtncS7NhuFqijNR+MkJoaj8yC+3lhiXoek?= =?us-ascii?Q?6hzmU0TMByJQKkJsl1qb1g5l?= X-OriginatorOrg: nxp.com X-MS-Exchange-CrossTenant-Network-Message-Id: b4250076-45a8-4449-51bf-08d94c1b122d X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8630.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 21 Jul 2021 07:42:20.4305 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 686ea1d3-bc2b-4c6f-a92c-d99c5c301635 X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: JXB9O2XyZsQIpuj3wmeSejT5D1OWO4wywrUpxt4W61AEXHmwQF1Mtj7PjnE1JlPobmlUf5NoF6BqWHZeeIM7QQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU2PR04MB8823 Subject: [dpdk-dev] [PATCH 3/5] crypto/dpaa_sec: support non-HMAC auth algos X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" From: Gagandeep Singh This patch add support for non-HMAC, md5, shax algos. Signed-off-by: Gagandeep Singh --- doc/guides/cryptodevs/features/dpaa_sec.ini | 8 +- drivers/crypto/dpaa_sec/dpaa_sec.c | 55 +++++++-- drivers/crypto/dpaa_sec/dpaa_sec.h | 126 ++++++++++++++++++++ 3 files changed, 180 insertions(+), 9 deletions(-) diff --git a/doc/guides/cryptodevs/features/dpaa_sec.ini b/doc/guides/cryptodevs/features/dpaa_sec.ini index 5d0d04d601..eab14da96c 100644 --- a/doc/guides/cryptodevs/features/dpaa_sec.ini +++ b/doc/guides/cryptodevs/features/dpaa_sec.ini @@ -33,11 +33,17 @@ ZUC EEA3 = Y ; Supported authentication algorithms of the 'dpaa_sec' crypto driver. ; [Auth] +MD5 = Y MD5 HMAC = Y +SHA1 = Y SHA1 HMAC = Y +SHA224 = Y SHA224 HMAC = Y +SHA256 = Y SHA256 HMAC = Y +SHA384 = Y SHA384 HMAC = Y +SHA512 = Y SHA512 HMAC = Y SNOW3G UIA2 = Y ZUC EIA3 = Y @@ -53,4 +59,4 @@ AES GCM (256) = Y ; ; Supported Asymmetric algorithms of the 'dpaa_sec' crypto driver. ; -[Asymmetric] \ No newline at end of file +[Asymmetric] diff --git a/drivers/crypto/dpaa_sec/dpaa_sec.c b/drivers/crypto/dpaa_sec/dpaa_sec.c index af5c7c499c..95b9d7414f 100644 --- a/drivers/crypto/dpaa_sec/dpaa_sec.c +++ b/drivers/crypto/dpaa_sec/dpaa_sec.c @@ -489,6 +489,18 @@ dpaa_sec_prep_cdb(dpaa_sec_session *ses) alginfo_a.algtype = ses->auth_key.alg; alginfo_a.algmode = ses->auth_key.algmode; switch (ses->auth_alg) { + case RTE_CRYPTO_AUTH_MD5: + case RTE_CRYPTO_AUTH_SHA1: + case RTE_CRYPTO_AUTH_SHA224: + case RTE_CRYPTO_AUTH_SHA256: + case RTE_CRYPTO_AUTH_SHA384: + case RTE_CRYPTO_AUTH_SHA512: + shared_desc_len = cnstr_shdsc_hash( + cdb->sh_desc, true, + swap, SHR_NEVER, &alginfo_a, + !ses->dir, + ses->digest_length); + break; case RTE_CRYPTO_AUTH_MD5_HMAC: case RTE_CRYPTO_AUTH_SHA1_HMAC: case RTE_CRYPTO_AUTH_SHA224_HMAC: @@ -2080,43 +2092,70 @@ dpaa_sec_auth_init(struct rte_cryptodev *dev __rte_unused, { session->ctxt = DPAA_SEC_AUTH; session->auth_alg = xform->auth.algo; - session->auth_key.data = rte_zmalloc(NULL, xform->auth.key.length, + session->auth_key.length = xform->auth.key.length; + if (xform->auth.key.length) { + session->auth_key.data = + rte_zmalloc(NULL, xform->auth.key.length, RTE_CACHE_LINE_SIZE); - if (session->auth_key.data == NULL && xform->auth.key.length > 0) { - DPAA_SEC_ERR("No Memory for auth key"); - return -ENOMEM; + if (session->auth_key.data == NULL) { + DPAA_SEC_ERR("No Memory for auth key"); + return -ENOMEM; + } + memcpy(session->auth_key.data, xform->auth.key.data, + xform->auth.key.length); + } - session->auth_key.length = xform->auth.key.length; session->digest_length = xform->auth.digest_length; if (session->cipher_alg == RTE_CRYPTO_CIPHER_NULL) { session->iv.offset = xform->auth.iv.offset; session->iv.length = xform->auth.iv.length; } - memcpy(session->auth_key.data, xform->auth.key.data, - xform->auth.key.length); - switch (xform->auth.algo) { + case RTE_CRYPTO_AUTH_SHA1: + session->auth_key.alg = OP_ALG_ALGSEL_SHA1; + session->auth_key.algmode = OP_ALG_AAI_HASH; + break; case RTE_CRYPTO_AUTH_SHA1_HMAC: session->auth_key.alg = OP_ALG_ALGSEL_SHA1; session->auth_key.algmode = OP_ALG_AAI_HMAC; break; + case RTE_CRYPTO_AUTH_MD5: + session->auth_key.alg = OP_ALG_ALGSEL_MD5; + session->auth_key.algmode = OP_ALG_AAI_HASH; + break; case RTE_CRYPTO_AUTH_MD5_HMAC: session->auth_key.alg = OP_ALG_ALGSEL_MD5; session->auth_key.algmode = OP_ALG_AAI_HMAC; break; + case RTE_CRYPTO_AUTH_SHA224: + session->auth_key.alg = OP_ALG_ALGSEL_SHA224; + session->auth_key.algmode = OP_ALG_AAI_HASH; + break; case RTE_CRYPTO_AUTH_SHA224_HMAC: session->auth_key.alg = OP_ALG_ALGSEL_SHA224; session->auth_key.algmode = OP_ALG_AAI_HMAC; break; + case RTE_CRYPTO_AUTH_SHA256: + session->auth_key.alg = OP_ALG_ALGSEL_SHA256; + session->auth_key.algmode = OP_ALG_AAI_HASH; + break; case RTE_CRYPTO_AUTH_SHA256_HMAC: session->auth_key.alg = OP_ALG_ALGSEL_SHA256; session->auth_key.algmode = OP_ALG_AAI_HMAC; break; + case RTE_CRYPTO_AUTH_SHA384: + session->auth_key.alg = OP_ALG_ALGSEL_SHA384; + session->auth_key.algmode = OP_ALG_AAI_HASH; + break; case RTE_CRYPTO_AUTH_SHA384_HMAC: session->auth_key.alg = OP_ALG_ALGSEL_SHA384; session->auth_key.algmode = OP_ALG_AAI_HMAC; break; + case RTE_CRYPTO_AUTH_SHA512: + session->auth_key.alg = OP_ALG_ALGSEL_SHA512; + session->auth_key.algmode = OP_ALG_AAI_HASH; + break; case RTE_CRYPTO_AUTH_SHA512_HMAC: session->auth_key.alg = OP_ALG_ALGSEL_SHA512; session->auth_key.algmode = OP_ALG_AAI_HMAC; diff --git a/drivers/crypto/dpaa_sec/dpaa_sec.h b/drivers/crypto/dpaa_sec/dpaa_sec.h index 216e8c8b6f..d500a4c246 100644 --- a/drivers/crypto/dpaa_sec/dpaa_sec.h +++ b/drivers/crypto/dpaa_sec/dpaa_sec.h @@ -240,6 +240,27 @@ static const struct rte_cryptodev_capabilities dpaa_sec_capabilities[] = { }, }, }, }, }, + { /* MD5 */ + .op = RTE_CRYPTO_OP_TYPE_SYMMETRIC, + {.sym = { + .xform_type = RTE_CRYPTO_SYM_XFORM_AUTH, + {.auth = { + .algo = RTE_CRYPTO_AUTH_MD5, + .block_size = 64, + .key_size = { + .min = 0, + .max = 0, + .increment = 0 + }, + .digest_size = { + .min = 16, + .max = 16, + .increment = 0 + }, + .iv_size = { 0 } + }, } + }, } + }, { /* MD5 HMAC */ .op = RTE_CRYPTO_OP_TYPE_SYMMETRIC, {.sym = { @@ -261,6 +282,27 @@ static const struct rte_cryptodev_capabilities dpaa_sec_capabilities[] = { }, } }, } }, + { /* SHA1 */ + .op = RTE_CRYPTO_OP_TYPE_SYMMETRIC, + {.sym = { + .xform_type = RTE_CRYPTO_SYM_XFORM_AUTH, + {.auth = { + .algo = RTE_CRYPTO_AUTH_SHA1, + .block_size = 64, + .key_size = { + .min = 0, + .max = 0, + .increment = 0 + }, + .digest_size = { + .min = 20, + .max = 20, + .increment = 0 + }, + .iv_size = { 0 } + }, } + }, } + }, { /* SHA1 HMAC */ .op = RTE_CRYPTO_OP_TYPE_SYMMETRIC, {.sym = { @@ -282,6 +324,27 @@ static const struct rte_cryptodev_capabilities dpaa_sec_capabilities[] = { }, } }, } }, + { /* SHA224 */ + .op = RTE_CRYPTO_OP_TYPE_SYMMETRIC, + {.sym = { + .xform_type = RTE_CRYPTO_SYM_XFORM_AUTH, + {.auth = { + .algo = RTE_CRYPTO_AUTH_SHA224, + .block_size = 64, + .key_size = { + .min = 0, + .max = 0, + .increment = 0 + }, + .digest_size = { + .min = 28, + .max = 28, + .increment = 0 + }, + .iv_size = { 0 } + }, } + }, } + }, { /* SHA224 HMAC */ .op = RTE_CRYPTO_OP_TYPE_SYMMETRIC, {.sym = { @@ -303,6 +366,27 @@ static const struct rte_cryptodev_capabilities dpaa_sec_capabilities[] = { }, } }, } }, + { /* SHA256 */ + .op = RTE_CRYPTO_OP_TYPE_SYMMETRIC, + {.sym = { + .xform_type = RTE_CRYPTO_SYM_XFORM_AUTH, + {.auth = { + .algo = RTE_CRYPTO_AUTH_SHA256, + .block_size = 64, + .key_size = { + .min = 0, + .max = 0, + .increment = 0 + }, + .digest_size = { + .min = 32, + .max = 32, + .increment = 0 + }, + .iv_size = { 0 } + }, } + }, } + }, { /* SHA256 HMAC */ .op = RTE_CRYPTO_OP_TYPE_SYMMETRIC, {.sym = { @@ -324,6 +408,27 @@ static const struct rte_cryptodev_capabilities dpaa_sec_capabilities[] = { }, } }, } }, + { /* SHA384 */ + .op = RTE_CRYPTO_OP_TYPE_SYMMETRIC, + {.sym = { + .xform_type = RTE_CRYPTO_SYM_XFORM_AUTH, + {.auth = { + .algo = RTE_CRYPTO_AUTH_SHA384, + .block_size = 64, + .key_size = { + .min = 0, + .max = 0, + .increment = 0 + }, + .digest_size = { + .min = 48, + .max = 48, + .increment = 0 + }, + .iv_size = { 0 } + }, } + }, } + }, { /* SHA384 HMAC */ .op = RTE_CRYPTO_OP_TYPE_SYMMETRIC, {.sym = { @@ -345,6 +450,27 @@ static const struct rte_cryptodev_capabilities dpaa_sec_capabilities[] = { }, } }, } }, + { /* SHA512 */ + .op = RTE_CRYPTO_OP_TYPE_SYMMETRIC, + {.sym = { + .xform_type = RTE_CRYPTO_SYM_XFORM_AUTH, + {.auth = { + .algo = RTE_CRYPTO_AUTH_SHA512, + .block_size = 128, + .key_size = { + .min = 0, + .max = 0, + .increment = 0 + }, + .digest_size = { + .min = 64, + .max = 64, + .increment = 0 + }, + .iv_size = { 0 } + }, } + }, } + }, { /* SHA512 HMAC */ .op = RTE_CRYPTO_OP_TYPE_SYMMETRIC, {.sym = { -- 2.17.1