From patchwork Tue Sep 7 08:39:45 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Hemant Agrawal X-Patchwork-Id: 98142 X-Patchwork-Delegate: gakhil@marvell.com Return-Path: X-Original-To: patchwork@inbox.dpdk.org Delivered-To: patchwork@inbox.dpdk.org Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 9ADCFA0C46; Tue, 7 Sep 2021 10:44:40 +0200 (CEST) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 177A241123; Tue, 7 Sep 2021 10:44:35 +0200 (CEST) Received: from EUR03-DB5-obe.outbound.protection.outlook.com (mail-eopbgr40045.outbound.protection.outlook.com [40.107.4.45]) by mails.dpdk.org (Postfix) with ESMTP id 69B6541100 for ; Tue, 7 Sep 2021 10:44:34 +0200 (CEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=kpJUP2bCYNnC8G8QBiIqLiuZ5Ycil4P+eLAV6AkWLq5AgTFZgN5k3FBewIRkp0o5TtdiM4XKg1tXhjgv/pqdatr3kmQq+tP/QL5GuoVoYNkhIPsCznXCgQyfOgN4UVnvYq7Vddyl9coqOIOOMWzGtAQvuJVhp9Vf6RVHTjigfaNJRGsmn8DoSXQlxrkbTMwppRZ1NZ0nxQkL3mTDg/fFW70tqE8y0FinS8meTOKpo9WhMWFBGIEQffss3sxQf2xCYK39W5vZL6DtUsvtxjhcf2uT/yLyMpvUhB/hd+Q2Ud9QYwdWI1Q20De6/Niuz5g6xRpqdCe8k8Uu2IC5mbkW2g== 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; bh=szKEFX7wKRy9JNlscyzSYNe8o6r5Ua52+9HEk7MCQUI=; b=PI7Pobq/s8SanWqqlBs68Y7KNDA8J2SVKQyDntWbHJAbxCP5bx+gv0Y/HlyYyEoGn0YcsHbXFjnZABu+jji5at2UYsx4M25ydkQYhX+2u3sjEZBSHwWdYfsJE+hWYHOWSNkXvvAEY+wPC0jh2NRPtWaDsphQU8X5SrA/xqJ4H5yF84quM+VqqZIgOr3Pua5iwQ8MhAt0t0kYWF1aegUxy4gzRKtuSt5Y+Pe2dCDAWiSNxBII2LWNDZc7701zKX5vd5hQ4pAEMhsSFOEWXm0ooZRBGm/b4av70uE4YT4v1clhNCZQdN7KRMlPB7lfBZVrM9D3ErXrHwRnGB0VLEJlYQ== 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=szKEFX7wKRy9JNlscyzSYNe8o6r5Ua52+9HEk7MCQUI=; b=Gb8ZnTLMvc0MN9V/BqOEeaSj4JQZgQDIZNKhVg8kE8T30VNRtx0u/HaWxCx1dVY82Mw8IQvaRIiAFrlqdyqcPlc32XHzt2SLzH5bC++LO8mJaQ/InmrdHwiiwqVsexaHyjr4L+EYYNNnSs7UdE2KKx4c46N1Y5vutSi/NU1kmt4= 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 DU2PR04MB8935.eurprd04.prod.outlook.com (2603:10a6:10:2e2::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4500.14; Tue, 7 Sep 2021 08:44:33 +0000 Received: from DU2PR04MB8630.eurprd04.prod.outlook.com ([fe80::945d:e362:712d:1b80]) by DU2PR04MB8630.eurprd04.prod.outlook.com ([fe80::945d:e362:712d:1b80%4]) with mapi id 15.20.4478.025; Tue, 7 Sep 2021 08:44:33 +0000 From: Hemant Agrawal To: dev@dpdk.org, gakhil@marvell.com Cc: Gagandeep Singh Date: Tue, 7 Sep 2021 14:09:45 +0530 Message-Id: <20210907083953.8948-2-hemant.agrawal@nxp.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20210907083953.8948-1-hemant.agrawal@nxp.com> References: <20210825081837.23830-1-hemant.agrawal@nxp.com> <20210907083953.8948-1-hemant.agrawal@nxp.com> X-ClientProxiedBy: SGBP274CA0024.SGPP274.PROD.OUTLOOK.COM (2603:1096:4:b0::36) 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 SGBP274CA0024.SGPP274.PROD.OUTLOOK.COM (2603:1096:4:b0::36) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4478.20 via Frontend Transport; Tue, 7 Sep 2021 08:44:32 +0000 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 51f0f26b-28c4-450d-9cd0-08d971dbb72c X-MS-TrafficTypeDiagnostic: DU2PR04MB8935: 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: M5exzIu64x2B6BuYX7Ps+OAKSm7cO5StRjNbbcPRQeo79XITZK4lm6TNj+UEFYx86ynMVpEr6L0RnzmqIgYi5lvtJ5AHffsfQ6+Jw+GXAABN2/oVqTmPKY9qlE0hz5//68Ns+eL7DWzRpbsY1thqiJL2aZvF1tZvzcn382tSOYnf1Ljos7esZ7ZSp+Sv/ieaUO7DGwMt3fvnsmrLJ44Qq1xmQ6b98TB1r9+KQbVj3G12IprB5+Pr1LnCWZv0z49uKUgzzFLbjRbjxi1YARuRPZ1Dofmqz3zmnfC75nwlW+SwQz0VJBG3qF1eRvGqot+eMztyuOoad4cpvsaCpZ7ilVMok6HHQ0+f/BCKUcjTrFEp4toTAzECdL+pv9n1n73ATIx6jzJ1Dvcgr/WuFyxhn5HJYOiai+v9GOmDpSfbuyKtExJofS/zzsaYh2KUmTIuP5PwB0LP0ggVmRaKGuLsz7OkXMZJd/Wxmm734L5AzMAFXNnz9EodIl2ihTEg4pFcY/51D40+H00/bMYKw2Qb++lF6IrRm8bMG+22dsszD1fIktbB9IuKw5k3qQNpuL1WMJI9+XGr6jbgxC1qBCKKcjl28KkeEhSP6C6En8Th06Jw+h8RHY/v4/4GcErIbTPHktpjRQC/rFbMIxwj0kEczcF+A/vdLgeDVqWa88dJtGXjzLcZHxfFaFUtGeoq3mVWvXUGUvzOT/d1h7nFGFTfiQ== 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)(346002)(136003)(39860400002)(366004)(376002)(396003)(2906002)(956004)(86362001)(2616005)(83380400001)(478600001)(316002)(6512007)(4326008)(52116002)(1076003)(5660300002)(38100700002)(6666004)(36756003)(186003)(38350700002)(26005)(44832011)(66946007)(6486002)(6506007)(66476007)(66556008)(8936002)(8676002); DIR:OUT; SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: 7Qwkx24CVlFjdWxL1xW+0h7d6JdKhU9hfyWDUw9zTGecCt4U6ySyGuBadAvObVkivqDPE7/iVTHmaoE5gBIKwccD9hXBT1wBYHq0vdn5RHSdB2qeQL60Za7LgvDg/O9dY7azIIk97qKWH0mYWXNfvrRjR4e8NVIeq3j28k6a6797u+6zx3rCVJJi3eKGIBWPo89PkUWkliERh59WboSiQX5lkFYBTEmnvFtcFjlM/SH1oo8oBekgK24pk3wuxtSGRbseGkSlIEt9f78Ph8qbzNeNLvX4HQ+tuAmvtbS1sOVlQjwHCjvsp0fPdB6q+HCJsJDg7Os/ST5nWB9RHZQk2Azz+ICC8n6DawB0uwSn9MHYkMRz9N/VdbIBvqWUReaHtJAJ4NE044SJqNctFkR0b6MirkzpKgAhHAo+8uNG5umQTp5HPJJe17ly6jIprgjuHDPwPx1aVq7Bzg5We4ab1CHmyTtR5UztMwPZIXCh5w6lH1qp5L3R5EafEzW5KNH0hhg8XGqBsK6gDsWwT8eO95phz9ZReHVBo1UjOKgzGEBCDWvWvVASzOdFcJJHMItH13PD+a+uf2YEKlB53rW501dnBZcK6pf+8JQ2TYir6EDQw3Lk0LIpRJGLPVLp4SJmVzZqpbBkHEsEp33D9bnht8UG1v+QpoCx3awGnSOANl1VflqmWYRub5vsp3fWa0WZwy7PWXgiAawAne8ykWg5Np6Jpbr57zZd0FVK4bv9y3umq52samotCtIhlJjBlxaczFQNr3+xe3X/mtYsRUn0JWH/I3bxGgPW3EdrtUjz7LNFUT16N66LCpxv9UkVy4OasfnpbGXejjywfhHcnjBgNqSdETpVkUVTGszohFttbLDLmbtVLmsmbD7YHoL+P/6KG7zxV4HMLLIUxSa/RIQlkonxfzduVAElZUp4bZDeySN+l18T0UJzHJOvBocL2jFFQLxphlaLKXSqMXnTLv3h9iFGC5vfp6WnsmVviAW/etsWeWZ2S8jVQ8nrdmbCtgBTnruxm+I0bMmCKI0qO+F+OCQE6mV1AU24naSyDhzTkwmglqnQgozKndujFVApbHb0M/VN3EL6yb/omAW/oAa6i8zYIIXebREN21UTU2V80NOpvhheYuBsP+CLSLX407W7oNiFGvedo8qWdV3n/8LTM5FH6Ue2UNyl0V2aND9GkAcUfb2br0B0t/fFfUHIwf0haNJGkHv4MiRTeneRDEMAW9bqp0dpw87A6yfmM8eYGZHcS58OP0O4K8pPtPR5/ti+I/URJ9YVVyyPfNiUGi+osjYDoGdJXfMSJGJgrAJV7x9OMhrpiEDvXLt1I9BQae6d X-OriginatorOrg: nxp.com X-MS-Exchange-CrossTenant-Network-Message-Id: 51f0f26b-28c4-450d-9cd0-08d971dbb72c X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8630.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Sep 2021 08:44:33.6358 (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: JGIlivy2D29/sPNGLnVLJtG7ujQVl/V/Jw9uqPj3KAvfdrtZsVbPhqKCXKoTuQo3VWdP8X0Gf8rX/Uf4/tG7qg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU2PR04MB8935 Subject: [dpdk-dev] [PATCH v3 02/10] 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 0a58f4e917..4f5d9d7f49 100644 --- a/drivers/crypto/dpaa_sec/dpaa_sec.c +++ b/drivers/crypto/dpaa_sec/dpaa_sec.c @@ -486,6 +486,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: @@ -2077,43 +2089,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 9685010f3f..153747c87c 100644 --- a/drivers/crypto/dpaa_sec/dpaa_sec.h +++ b/drivers/crypto/dpaa_sec/dpaa_sec.h @@ -266,6 +266,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 = { @@ -287,6 +308,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 = { @@ -308,6 +350,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 = { @@ -329,6 +392,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 = { @@ -350,6 +434,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 = { @@ -371,6 +476,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 = {