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 7C2C14591E; Fri, 6 Sep 2024 14:39:45 +0200 (CEST) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 4FDA542EEF; Fri, 6 Sep 2024 14:39:45 +0200 (CEST) Received: from mgamail.intel.com (mgamail.intel.com [192.198.163.7]) by mails.dpdk.org (Postfix) with ESMTP id 3FB6E400D5 for ; Fri, 6 Sep 2024 14:39:44 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1725626384; x=1757162384; h=from:to:cc:subject:date:message-id:mime-version: content-transfer-encoding; bh=KDu+XapqS90B/8yEv0UlblAtTLjPKe6jId0h/IEnxxw=; b=nHmowwcy9buxb10wcpvdpUEpJ4lp/HgpGNqMLgcAoCIQUI8HDqDYA7j2 leNQnunLKbIBgqcYuZCaCk4QQrsxL2LPZwLy+KsiO9uBslmQ97/fMbLOV 5/JyZNm2LWEwwjdGoNpDDHQ7PruLzGL+vkzNlXcRI29yGLjqKlmnzG6Lu CL+9Fehs8pAkIkDaZsQgrBu61/WP/nUBOupT6znI4/qyxv1FkFMu6K6kv 8Hx5B/aiAUrC4kbUaBuWqck1GEM91GSA13ReXz6EcJiekpRWAD9gOmR2v mALoRz6d2DL2ur6/na7JgeIPDTCRLuM3xbHlsleRs/36y3NXEy15y6pYy g==; X-CSE-ConnectionGUID: JF7Ka+V/REuTxbQd2+18LQ== X-CSE-MsgGUID: +0MkxgnSSfC67MRVMuItzQ== X-IronPort-AV: E=McAfee;i="6700,10204,11187"; a="49797922" X-IronPort-AV: E=Sophos;i="6.10,207,1719903600"; d="scan'208";a="49797922" Received: from fmviesa007.fm.intel.com ([10.60.135.147]) by fmvoesa101.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 06 Sep 2024 05:39:43 -0700 X-CSE-ConnectionGUID: 5jdTdA8UTcOc72zT0X02Aw== X-CSE-MsgGUID: +NdcqwTlTEabZCXsTaHCWw== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.10,207,1719903600"; d="scan'208";a="65643013" Received: from silpixa00400886.ir.intel.com ([10.243.22.139]) by fmviesa007.fm.intel.com with ESMTP; 06 Sep 2024 05:39:42 -0700 From: Brian Dooley To: Kai Ji , Pablo de Lara Cc: dev@dpdk.org, gakhil@marvell.com, Brian Dooley Subject: [PATCH v1 1/3] crypto/ipsec_mb: add SM3 algorithm support Date: Fri, 6 Sep 2024 13:39:37 +0100 Message-Id: <20240906123939.2508919-1-brian.dooley@intel.com> X-Mailer: git-send-email 2.25.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit 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 This patch introduces SM3 algorithm support to the AESNI_MB PMD. Signed-off-by: Brian Dooley --- drivers/crypto/ipsec_mb/pmd_aesni_mb.c | 5 ++++ drivers/crypto/ipsec_mb/pmd_aesni_mb_priv.h | 26 ++++++++++++++++++++- 2 files changed, 30 insertions(+), 1 deletion(-) diff --git a/drivers/crypto/ipsec_mb/pmd_aesni_mb.c b/drivers/crypto/ipsec_mb/pmd_aesni_mb.c index ef4228bd38..4711b7f590 100644 --- a/drivers/crypto/ipsec_mb/pmd_aesni_mb.c +++ b/drivers/crypto/ipsec_mb/pmd_aesni_mb.c @@ -377,6 +377,11 @@ aesni_mb_set_session_auth_parameters(IMB_MGR *mb_mgr, sess->template_job.hash_alg = IMB_AUTH_SHA_512; auth_precompute = 0; break; +#if IMB_VERSION(1, 5, 0) <= IMB_VERSION_NUM + case RTE_CRYPTO_AUTH_SM3: + sess->template_job.hash_alg = IMB_AUTH_SM3; + break; +#endif default: IPSEC_MB_LOG(ERR, "Unsupported authentication algorithm selection"); diff --git a/drivers/crypto/ipsec_mb/pmd_aesni_mb_priv.h b/drivers/crypto/ipsec_mb/pmd_aesni_mb_priv.h index d6af2d4ded..90d2702a01 100644 --- a/drivers/crypto/ipsec_mb/pmd_aesni_mb_priv.h +++ b/drivers/crypto/ipsec_mb/pmd_aesni_mb_priv.h @@ -732,6 +732,27 @@ static const struct rte_cryptodev_capabilities aesni_mb_capabilities[] = { }, } }, } }, + { /* SM3 */ + .op = RTE_CRYPTO_OP_TYPE_SYMMETRIC, + {.sym = { + .xform_type = RTE_CRYPTO_SYM_XFORM_AUTH, + {.auth = { + .algo = RTE_CRYPTO_AUTH_SM3, + .block_size = 64, + .key_size = { + .min = 0, + .max = 0, + .increment = 0 + }, + .digest_size = { + .min = 32, + .max = 32, + .increment = 1 + }, + .iv_size = { 0 } + }, } + }, } + }, RTE_CRYPTODEV_END_OF_CAPABILITIES_LIST() }; @@ -840,7 +861,10 @@ static const unsigned int auth_digest_byte_lengths[] = { [IMB_AUTH_SHA_512] = 64, [IMB_AUTH_ZUC_EIA3_BITLEN] = 4, [IMB_AUTH_SNOW3G_UIA2_BITLEN] = 4, - [IMB_AUTH_KASUMI_UIA1] = 4 + [IMB_AUTH_KASUMI_UIA1] = 4, +#if IMB_VERSION(1, 5, 0) <= IMB_VERSION_NUM + [IMB_AUTH_SM3] = 32 +#endif /**< Vector mode dependent pointer table of the multi-buffer APIs */ }; -- 2.25.1