From patchwork Sun Aug 29 12:51:31 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Akhil Goyal X-Patchwork-Id: 97511 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 21FD8A0C46; Sun, 29 Aug 2021 14:51:58 +0200 (CEST) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 9CBCF40142; Sun, 29 Aug 2021 14:51:57 +0200 (CEST) Received: from mx0b-0016f401.pphosted.com (mx0b-0016f401.pphosted.com [67.231.156.173]) by mails.dpdk.org (Postfix) with ESMTP id 4DC9D40042 for ; Sun, 29 Aug 2021 14:51:56 +0200 (CEST) Received: from pps.filterd (m0045851.ppops.net [127.0.0.1]) by mx0b-0016f401.pphosted.com (8.16.1.2/8.16.1.2) with SMTP id 17T9b6dY028559; Sun, 29 Aug 2021 05:51:50 -0700 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=marvell.com; h=from : to : cc : subject : date : message-id : mime-version : content-transfer-encoding : content-type; s=pfpt0220; bh=Nsm9Twg+pDHQQjs691QL6T64AkhMBxt5OzmbbrUDYAk=; b=W5YqcJVofam/yyTFneN22iCl1dupAw6mQZl1TVnZipJQ7VD9GvsUMbrWq2YiJdUnd6We qyDmn23W84C4/PlWAOETQKLexWS1YWxf6U7yFfhv32X8MR7nmSnMiNMCaX/KwecmlcTR FXbawM/hvlWe2Q+MV7MfK9JN9OqB6eIkm3PIsEdjrV4K2+zmuoGbppWHwB38lzYJ82TF ueE38GwtwI4o52EmZnx4kYTj302GaTI45B+BoSGzMYRRU9jdB356Wf9rWqPiwOD1SSXF JOK0x56kApd6P+vEyxqap4CdzLdbXLi/aRmO1hvDHUyc2Tj440DV7iWEY4ySlRiV4uPi 1w== Received: from dc5-exch01.marvell.com ([199.233.59.181]) by mx0b-0016f401.pphosted.com with ESMTP id 3aqmnmtmht-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-SHA384 bits=256 verify=NOT); Sun, 29 Aug 2021 05:51:50 -0700 Received: from DC5-EXCH02.marvell.com (10.69.176.39) by DC5-EXCH01.marvell.com (10.69.176.38) with Microsoft SMTP Server (TLS) id 15.0.1497.18; Sun, 29 Aug 2021 05:51:48 -0700 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; Sun, 29 Aug 2021 05:51:48 -0700 Received: from localhost.localdomain (unknown [10.28.36.185]) by maili.marvell.com (Postfix) with ESMTP id E1B1A3F7070; Sun, 29 Aug 2021 05:51:42 -0700 (PDT) From: Akhil Goyal To: CC: , , , , , , , , , , , , , , , , , , Akhil Goyal Date: Sun, 29 Aug 2021 18:21:31 +0530 Message-ID: <20210829125139.2173235-1-gakhil@marvell.com> X-Mailer: git-send-email 2.25.1 MIME-Version: 1.0 X-Proofpoint-ORIG-GUID: ivpoNj0ybtSwCVfoFxsFYH45zab4aea0 X-Proofpoint-GUID: ivpoNj0ybtSwCVfoFxsFYH45zab4aea0 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.182.1,Aquarius:18.0.790,Hydra:6.0.391,FMLib:17.0.607.475 definitions=2021-08-29_04,2021-08-27_01,2020-04-07_01 Subject: [dpdk-dev] [PATCH 0/8] cryptodev: hide internal strutures 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" Structures rte_cryptodev and rte_cryptodev_data are not supposed to be directly used by the application. These are made public as they are used by inline datapath public APIs. This patchset, creates a new rte_cryptodev_core.h file which helps in defining a data structure to hold datapath APIs in a flat array based on the device identifier which is filled by the PMD. The patchset updates all crypto PMDs to use the new framework and hence the internal structs are made hidden. Similar series for ethdev and eventdev are also floated on ML. http://patches.dpdk.org/project/dpdk/list/?series=18382 http://patches.dpdk.org/project/dpdk/list/?series=18422 Akhil Goyal (8): cryptodev: separate out internal structures cryptodev: move inline APIs into separate structure cryptodev: add helper functions for new datapath interface cryptodev: use new API for datapath functions drivers/crypto: use new framework for datapath crypto/scheduler: rename enq-deq functions crypto/scheduler: update for new datapath framework cryptodev: move device specific structures drivers/crypto/aesni_gcm/aesni_gcm_pmd.c | 10 +- drivers/crypto/aesni_mb/rte_aesni_mb_pmd.c | 11 +- drivers/crypto/armv8/rte_armv8_pmd.c | 11 +- drivers/crypto/bcmfs/bcmfs_sym_pmd.c | 11 +- drivers/crypto/caam_jr/caam_jr.c | 11 +- drivers/crypto/ccp/ccp_dev.c | 1 + drivers/crypto/ccp/rte_ccp_pmd.c | 11 +- drivers/crypto/cnxk/cn10k_cryptodev_ops.c | 8 +- drivers/crypto/cnxk/cn10k_cryptodev_ops.h | 3 + drivers/crypto/cnxk/cn10k_ipsec.c | 1 + drivers/crypto/cnxk/cn9k_cryptodev_ops.c | 9 +- drivers/crypto/cnxk/cn9k_cryptodev_ops.h | 3 + .../crypto/cnxk/cnxk_cryptodev_capabilities.c | 1 + drivers/crypto/cnxk/cnxk_cryptodev_sec.c | 1 + drivers/crypto/dpaa2_sec/dpaa2_sec_dpseci.c | 12 +- drivers/crypto/dpaa_sec/dpaa_sec.c | 11 +- drivers/crypto/kasumi/rte_kasumi_pmd.c | 11 +- drivers/crypto/mlx5/mlx5_crypto.c | 11 +- drivers/crypto/mvsam/rte_mrvl_pmd.c | 11 +- drivers/crypto/nitrox/nitrox_sym.c | 11 +- drivers/crypto/nitrox/nitrox_sym_reqmgr.c | 1 + drivers/crypto/null/null_crypto_pmd.c | 11 +- .../crypto/octeontx/otx_cryptodev_hw_access.c | 1 + drivers/crypto/octeontx/otx_cryptodev_ops.c | 16 +- drivers/crypto/octeontx/otx_cryptodev_ops.h | 5 + .../crypto/octeontx2/otx2_cryptodev_mbox.c | 1 + drivers/crypto/octeontx2/otx2_cryptodev_ops.c | 11 +- drivers/crypto/openssl/rte_openssl_pmd.c | 11 +- drivers/crypto/qat/qat_asym_pmd.c | 11 +- drivers/crypto/qat/qat_sym_pmd.c | 10 +- drivers/crypto/scheduler/scheduler_failover.c | 35 +- .../crypto/scheduler/scheduler_multicore.c | 32 +- .../scheduler/scheduler_pkt_size_distr.c | 34 +- .../crypto/scheduler/scheduler_roundrobin.c | 34 +- drivers/crypto/snow3g/rte_snow3g_pmd.c | 11 +- drivers/crypto/virtio/virtio_cryptodev.c | 10 +- drivers/crypto/virtio/virtio_cryptodev.h | 2 + drivers/crypto/virtio/virtio_rxtx.c | 2 + drivers/crypto/zuc/rte_zuc_pmd.c | 11 +- lib/cryptodev/cryptodev_pmd.c | 33 ++ lib/cryptodev/cryptodev_pmd.h | 323 +++++++++++++++++- lib/cryptodev/meson.build | 4 +- lib/cryptodev/rte_cryptodev.c | 43 ++- lib/cryptodev/rte_cryptodev.h | 308 +++++------------ lib/cryptodev/rte_cryptodev_core.h | 43 +++ lib/cryptodev/version.map | 8 + 46 files changed, 854 insertions(+), 316 deletions(-) create mode 100644 lib/cryptodev/rte_cryptodev_core.h