From patchwork Fri Oct 22 17:03:45 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Fan Zhang X-Patchwork-Id: 102683 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 C1E06A0C43; Fri, 22 Oct 2021 19:04:00 +0200 (CEST) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 7973F40E6E; Fri, 22 Oct 2021 19:04:00 +0200 (CEST) Received: from mga05.intel.com (mga05.intel.com [192.55.52.43]) by mails.dpdk.org (Postfix) with ESMTP id 458A04003E for ; Fri, 22 Oct 2021 19:03:58 +0200 (CEST) X-IronPort-AV: E=McAfee;i="6200,9189,10145"; a="315546555" X-IronPort-AV: E=Sophos;i="5.87,173,1631602800"; d="scan'208";a="315546555" Received: from fmsmga003.fm.intel.com ([10.253.24.29]) by fmsmga105.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 22 Oct 2021 10:03:57 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.87,173,1631602800"; d="scan'208";a="569279721" Received: from silpixa00400885.ir.intel.com ([10.243.23.122]) by FMSMGA003.fm.intel.com with ESMTP; 22 Oct 2021 10:03:56 -0700 From: Fan Zhang To: dev@dpdk.org Cc: gakhil@marvell.com, Fan Zhang Date: Fri, 22 Oct 2021 18:03:45 +0100 Message-Id: <20211022170354.13503-1-roy.fan.zhang@intel.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20211014161137.1405168-1-roy.fan.zhang@intel.com> References: <20211014161137.1405168-1-roy.fan.zhang@intel.com> MIME-Version: 1.0 Subject: [dpdk-dev] [dpdk-dev v4 0/9] drivers/qat: isolate implementations of qat generations 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" This patchset introduces new qat driver structure and updates existing symmetric crypto qat PMD. The purpose of the change is to isolate QAT generation specific implementations from one to another. It is expected the changes to the specific generation driver code does minimum impact to other generations' implementations. Also adding the support to new features or new qat generation hardware will have zero impact to existing functionalities. v4: - rebased on top of latest master. - updated comments. - removed naming convention patch. v3: - removed release note update. - updated with more unified naming conventions. v2: - unified asym and sym data structures for qat. - more refined per gen code split. Fan Zhang (9): common/qat: add gen specific data and function common/qat: add gen specific device implementation common/qat: add gen specific queue pair function common/qat: add gen specific queue implementation compress/qat: add gen specific data and function compress/qat: add gen specific implementation crypto/qat: unified device private data structure crypto/qat: add gen specific data and function crypto/qat: add gen specific implementation drivers/common/qat/dev/qat_dev_gen1.c | 254 ++++ drivers/common/qat/dev/qat_dev_gen2.c | 37 + drivers/common/qat/dev/qat_dev_gen3.c | 83 ++ drivers/common/qat/dev/qat_dev_gen4.c | 305 ++++ drivers/common/qat/dev/qat_dev_gens.h | 65 + drivers/common/qat/meson.build | 15 +- .../qat/qat_adf/adf_transport_access_macros.h | 2 + .../common/qat/qat_adf/icp_qat_hw_gen4_comp.h | 195 +++ .../qat/qat_adf/icp_qat_hw_gen4_comp_defs.h | 299 ++++ drivers/common/qat/qat_common.c | 15 + drivers/common/qat/qat_common.h | 19 +- drivers/common/qat/qat_device.c | 205 ++- drivers/common/qat/qat_device.h | 45 +- drivers/common/qat/qat_qp.c | 677 ++++----- drivers/common/qat/qat_qp.h | 121 +- drivers/compress/qat/dev/qat_comp_pmd_gen1.c | 175 +++ drivers/compress/qat/dev/qat_comp_pmd_gen2.c | 30 + drivers/compress/qat/dev/qat_comp_pmd_gen3.c | 30 + drivers/compress/qat/dev/qat_comp_pmd_gen4.c | 213 +++ drivers/compress/qat/dev/qat_comp_pmd_gens.h | 30 + drivers/compress/qat/qat_comp.c | 101 +- drivers/compress/qat/qat_comp.h | 8 +- drivers/compress/qat/qat_comp_pmd.c | 159 +-- drivers/compress/qat/qat_comp_pmd.h | 76 + drivers/crypto/qat/README | 7 - drivers/crypto/qat/dev/qat_asym_pmd_gen1.c | 76 + drivers/crypto/qat/dev/qat_crypto_pmd_gen2.c | 224 +++ drivers/crypto/qat/dev/qat_crypto_pmd_gen3.c | 164 +++ drivers/crypto/qat/dev/qat_crypto_pmd_gen4.c | 124 ++ drivers/crypto/qat/dev/qat_crypto_pmd_gens.h | 36 + drivers/crypto/qat/dev/qat_sym_pmd_gen1.c | 283 ++++ drivers/crypto/qat/meson.build | 26 - drivers/crypto/qat/qat_asym_capabilities.h | 63 - drivers/crypto/qat/qat_asym_pmd.c | 276 +--- drivers/crypto/qat/qat_asym_pmd.h | 54 +- drivers/crypto/qat/qat_crypto.c | 172 +++ drivers/crypto/qat/qat_crypto.h | 91 ++ drivers/crypto/qat/qat_sym_capabilities.h | 1248 ----------------- drivers/crypto/qat/qat_sym_pmd.c | 428 +----- drivers/crypto/qat/qat_sym_pmd.h | 76 +- drivers/crypto/qat/qat_sym_session.c | 15 +- 41 files changed, 3772 insertions(+), 2750 deletions(-) create mode 100644 drivers/common/qat/dev/qat_dev_gen1.c create mode 100644 drivers/common/qat/dev/qat_dev_gen2.c create mode 100644 drivers/common/qat/dev/qat_dev_gen3.c create mode 100644 drivers/common/qat/dev/qat_dev_gen4.c create mode 100644 drivers/common/qat/dev/qat_dev_gens.h create mode 100644 drivers/common/qat/qat_adf/icp_qat_hw_gen4_comp.h create mode 100644 drivers/common/qat/qat_adf/icp_qat_hw_gen4_comp_defs.h create mode 100644 drivers/compress/qat/dev/qat_comp_pmd_gen1.c create mode 100644 drivers/compress/qat/dev/qat_comp_pmd_gen2.c create mode 100644 drivers/compress/qat/dev/qat_comp_pmd_gen3.c create mode 100644 drivers/compress/qat/dev/qat_comp_pmd_gen4.c create mode 100644 drivers/compress/qat/dev/qat_comp_pmd_gens.h delete mode 100644 drivers/crypto/qat/README create mode 100644 drivers/crypto/qat/dev/qat_asym_pmd_gen1.c create mode 100644 drivers/crypto/qat/dev/qat_crypto_pmd_gen2.c create mode 100644 drivers/crypto/qat/dev/qat_crypto_pmd_gen3.c create mode 100644 drivers/crypto/qat/dev/qat_crypto_pmd_gen4.c create mode 100644 drivers/crypto/qat/dev/qat_crypto_pmd_gens.h create mode 100644 drivers/crypto/qat/dev/qat_sym_pmd_gen1.c delete mode 100644 drivers/crypto/qat/meson.build delete mode 100644 drivers/crypto/qat/qat_asym_capabilities.h create mode 100644 drivers/crypto/qat/qat_crypto.c create mode 100644 drivers/crypto/qat/qat_crypto.h delete mode 100644 drivers/crypto/qat/qat_sym_capabilities.h