From patchwork Fri Dec 17 09:19:42 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Anoob Joseph X-Patchwork-Id: 105202 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 A0942A0352; Fri, 17 Dec 2021 10:20:31 +0100 (CET) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 56B744013F; Fri, 17 Dec 2021 10:20:31 +0100 (CET) Received: from mx0b-0016f401.pphosted.com (mx0a-0016f401.pphosted.com [67.231.148.174]) by mails.dpdk.org (Postfix) with ESMTP id D05C940040 for ; Fri, 17 Dec 2021 10:20:29 +0100 (CET) Received: from pps.filterd (m0045849.ppops.net [127.0.0.1]) by mx0a-0016f401.pphosted.com (8.16.1.2/8.16.1.2) with ESMTP id 1BH4DKUI003985 for ; Fri, 17 Dec 2021 01:20:28 -0800 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=marvell.com; h=from : to : cc : subject : date : message-id : in-reply-to : references : mime-version : content-transfer-encoding : content-type; s=pfpt0220; bh=DNS0HVp/c9naSysP/33ApHsgq/QpYGCSDozxDNeOIHU=; b=SNEPuugK0J6tuP7TYoMU6yi1FJQs4I/U1kLjNA/nsW9Wrua6c5Hyixgq+b5FjMDtIKCf EDCDvNoFUwkb/Tmehlc7sSpOla0DTCJH51WU6XLHwK7jgHAn8O3ktudKBr34J2bphSjM Cn/xbUwOtJgSMrZujWSuTwdMujzxeFEzkXQqU7qOnQRnDm1U/MSabTi6NgIoWHTm/irq LzjVsUWW4JS1ATbvF2Bwl0sNXTgkcmPP/iQAo9kLtSJjdAmdDaNCCFFdRiuaiPnObPXy fJaWIQ2i9nSZ59T4bNvZhY8pT6f50ZkQvwO1r//2AJFevf5oczLu3jSxlgIndNxPgST7 Iw== Received: from dc5-exch02.marvell.com ([199.233.59.182]) by mx0a-0016f401.pphosted.com (PPS) with ESMTPS id 3d0b362s4d-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-SHA384 bits=256 verify=NOT) for ; Fri, 17 Dec 2021 01:20:28 -0800 Received: from DC5-EXCH02.marvell.com (10.69.176.39) by DC5-EXCH02.marvell.com (10.69.176.39) with Microsoft SMTP Server (TLS) id 15.0.1497.18; Fri, 17 Dec 2021 01:20:27 -0800 Received: from maili.marvell.com (10.69.176.80) by DC5-EXCH02.marvell.com (10.69.176.39) with Microsoft SMTP Server id 15.0.1497.18 via Frontend Transport; Fri, 17 Dec 2021 01:20:27 -0800 Received: from HY-LT1002.marvell.com (HY-LT1002.marvell.com [10.28.176.218]) by maili.marvell.com (Postfix) with ESMTP id 46C423F70A3; Fri, 17 Dec 2021 01:20:25 -0800 (PST) From: Anoob Joseph To: Akhil Goyal , Jerin Jacob CC: Anoob Joseph , Archana Muniganti , Tejasree Kondoj , Subject: [PATCH v3 00/29] New features and improvements in cnxk crypto PMD Date: Fri, 17 Dec 2021 14:49:42 +0530 Message-ID: <1639732811-1440-1-git-send-email-anoobj@marvell.com> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1639676975-1316-1-git-send-email-anoobj@marvell.com> References: <1639676975-1316-1-git-send-email-anoobj@marvell.com> MIME-Version: 1.0 X-Proofpoint-ORIG-GUID: ZM9wRrzGVV7ROw9-4_6MTX91Rs5TsHyd X-Proofpoint-GUID: ZM9wRrzGVV7ROw9-4_6MTX91Rs5TsHyd X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.205,Aquarius:18.0.790,Hydra:6.0.425,FMLib:17.11.62.513 definitions=2021-12-17_03,2021-12-16_01,2021-12-02_01 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 New features and fixes to cnxk crypto PMDs - Support for more algorithms in lookaside crypto & protocol - Support for copy & set DF bit - Support for CPT CTX update - Support for security session stats in cn10k Changes in v3 - Fixed build error from CI Changes in v2 - Support for copy & set DSCP - Support for per packet IV in cn9k - Support for cn10k v1.19 microcode Ankur Dwivedi (1): crypto/cnxk: add security session stats get Anoob Joseph (20): common/cnxk: define minor opcodes for MISC opcode common/cnxk: add aes-xcbc key derive common/cnxk: fix reset of fields common/cnxk: verify input args common/cnxk: update completion code crypto/cnxk: clear session data before populating crypto/cnxk: update max sec crypto caps crypto/cnxk: account for CPT CTX updates and flush delays crypto/cnxk: use struct sizes for ctx writes crypto/cnxk: add skip for unsupported cases crypto/cnxk: handle null chained ops crypto/cnxk: fix inflight cnt calculation crypto/cnxk: use atomics to access CPT res crypto/cnxk: add more info on command timeout crypto/cnxk: fix extend tail calculation crypto/cnxk: add aes xcbc and null cipher crypto/cnxk: add copy and set DF crypto/cnxk: add aes cmac crypto/cnxk: enable copy dscp crypto/cnxk: update microcode completion handling Archana Muniganti (2): common/cnxk: add bit fields for params crypto/cnxk: add per pkt IV in lookaside IPsec debug mode Shijith Thotton (1): crypto/cnxk: only enable queues that are allocated Tejasree Kondoj (5): crypto/cnxk: add lookaside IPsec AES-CBC-HMAC-SHA256 support crypto/cnxk: write CPT CTX through microcode op crypto/cnxk: support cnxk lookaside IPsec HMAC-SHA384/512 crypto/cnxk: add context reload for IV crypto/cnxk: support lookaside IPsec AES-CTR doc/guides/cryptodevs/cnxk.rst | 50 ++++- doc/guides/cryptodevs/features/cn10k.ini | 37 ++-- doc/guides/cryptodevs/features/cn9k.ini | 37 ++-- doc/guides/rel_notes/release_22_03.rst | 10 + drivers/common/cnxk/cnxk_security.c | 92 ++++++-- drivers/common/cnxk/hw/cpt.h | 15 ++ drivers/common/cnxk/meson.build | 1 + drivers/common/cnxk/roc_aes.c | 208 ++++++++++++++++++ drivers/common/cnxk/roc_aes.h | 14 ++ drivers/common/cnxk/roc_api.h | 3 + drivers/common/cnxk/roc_cpt.c | 4 +- drivers/common/cnxk/roc_cpt.h | 24 +- drivers/common/cnxk/roc_ie_on.h | 47 +++- drivers/common/cnxk/roc_ie_ot.h | 4 +- drivers/common/cnxk/roc_se.h | 14 +- drivers/common/cnxk/version.map | 1 + drivers/crypto/cnxk/cn10k_cryptodev_ops.c | 91 ++++---- drivers/crypto/cnxk/cn10k_ipsec.c | 232 ++++++++++++++++---- drivers/crypto/cnxk/cn10k_ipsec.h | 26 ++- drivers/crypto/cnxk/cn10k_ipsec_la_ops.h | 28 ++- drivers/crypto/cnxk/cn9k_cryptodev_ops.c | 29 ++- drivers/crypto/cnxk/cn9k_ipsec.c | 253 +++++++++++++++++----- drivers/crypto/cnxk/cn9k_ipsec.h | 2 + drivers/crypto/cnxk/cn9k_ipsec_la_ops.h | 20 +- drivers/crypto/cnxk/cnxk_cryptodev.h | 2 +- drivers/crypto/cnxk/cnxk_cryptodev_capabilities.c | 158 +++++++++++++- drivers/crypto/cnxk/cnxk_cryptodev_ops.c | 245 +++++++++++++-------- drivers/crypto/cnxk/cnxk_cryptodev_ops.h | 17 +- drivers/crypto/cnxk/cnxk_cryptodev_sec.c | 1 + drivers/crypto/cnxk/cnxk_ipsec.h | 19 +- drivers/crypto/cnxk/cnxk_se.h | 66 ++++-- 31 files changed, 1348 insertions(+), 402 deletions(-) create mode 100644 drivers/common/cnxk/roc_aes.c create mode 100644 drivers/common/cnxk/roc_aes.h