From patchwork Mon May 31 14:10:12 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Arkadiusz Kusztal X-Patchwork-Id: 93623 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 D9819A0524; Mon, 31 May 2021 16:10:46 +0200 (CEST) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 609F940041; Mon, 31 May 2021 16:10:46 +0200 (CEST) Received: from mga04.intel.com (mga04.intel.com [192.55.52.120]) by mails.dpdk.org (Postfix) with ESMTP id 619D94003F for ; Mon, 31 May 2021 16:10:45 +0200 (CEST) IronPort-SDR: BF4NbyzkyHmZvmCUOVesmvN7NwhRFVXzQAFWFT2KtYYElxrbPJjZ92duK4PDCkWJlTKk1XjJeH 6piwo02qphJQ== X-IronPort-AV: E=McAfee;i="6200,9189,10001"; a="201492197" X-IronPort-AV: E=Sophos;i="5.83,237,1616482800"; d="scan'208";a="201492197" Received: from orsmga004.jf.intel.com ([10.7.209.38]) by fmsmga104.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 31 May 2021 07:10:42 -0700 IronPort-SDR: AFo0520K/ZobtpVZB6PK5URK3QAVFvUfY6KhGHEcbdqL+ZT4/tPmMIyxaXx2CGMV+R+3ZEjaIW I5KE3MsGia3Q== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.83,237,1616482800"; d="scan'208";a="548760035" Received: from silpixa00400308.ir.intel.com ([10.237.214.61]) by orsmga004.jf.intel.com with ESMTP; 31 May 2021 07:10:40 -0700 From: Arek Kusztal To: dev@dpdk.org Cc: gakhil@marvell.com, fiona.trahe@intel.com, roy.fan.zhang@intel.com, Arek Kusztal Date: Mon, 31 May 2021 15:10:12 +0100 Message-Id: <20210531141027.13289-1-arkadiuszx.kusztal@intel.com> X-Mailer: git-send-email 2.17.1 Subject: [dpdk-dev] [PATCH 00/15] Add support for fourth generation of Intel QuickAssist Technology devices 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 adds support for fourth generation (GEN4) of Intel QuickAssist Technology (QAT) devices. Symmetric crypto PMD is enabled with following algorithms: * AES-CBC * AES-CMAC * AES-XCBC MAC * NULL (auth, cipher) * SHA1-HMAC * SHA2-HMAC (224, 256, 384, 512) * Chacha20-Poly1305 * AES-CCM * AES-GCM Other services (compression, asymmetric crypto) are not added with this patchset. Adam Dybkowski (2): crypto/qat: enable RAW API on QAT GEN1-3 only test/crypto: check if RAW API is supported Arek Kusztal (12): common/qat: rework qp per service function crypto/qat: add fourth generation qat devices support crypto/qat: enable gen4 legacy algorithms crypto/qat: add fourth generation ucs slice type, add ctr mode crypto/qat: rename content descriptor functions crypto/qat: add legacy gcm and ccm crypto/qat: rework init common header function crypto/qat: add aes gcm in ucs spc mode crypto/qat: add chacha-poly in ucs spc mode crypto/qat: add gmac in legacy mode on fourth generation common/qat: add pf2vf communication in qat common/qat: reset ring pairs before setting pmd Fan Zhang (1): crypto/qat: update raw dp api app/test/test_cryptodev.c | 34 +- doc/guides/cryptodevs/qat.rst | 10 +- doc/guides/rel_notes/release_21_08.rst | 6 + drivers/common/qat/meson.build | 1 + drivers/common/qat/qat_adf/adf_pf2vf_msg.h | 154 ++++++ .../adf_transport_access_macros_gen4.h | 52 ++ .../adf_transport_access_macros_gen4vf.h | 48 ++ drivers/common/qat/qat_adf/icp_qat_fw_la.h | 28 ++ drivers/common/qat/qat_adf/icp_qat_hw.h | 10 + drivers/common/qat/qat_common.h | 3 +- drivers/common/qat/qat_device.c | 69 +++ drivers/common/qat/qat_device.h | 17 + drivers/common/qat/qat_pf2vf.c | 80 +++ drivers/common/qat/qat_pf2vf.h | 19 + drivers/common/qat/qat_qp.c | 246 ++++++--- drivers/common/qat/qat_qp.h | 31 +- drivers/compress/qat/qat_comp_pmd.c | 16 +- drivers/crypto/qat/qat_asym_pmd.c | 16 +- drivers/crypto/qat/qat_sym.c | 57 ++- drivers/crypto/qat/qat_sym_capabilities.h | 472 ++++++++++++++++++ drivers/crypto/qat/qat_sym_hw_dp.c | 419 ++++++++-------- drivers/crypto/qat/qat_sym_pmd.c | 53 +- drivers/crypto/qat/qat_sym_session.c | 334 ++++++++----- drivers/crypto/qat/qat_sym_session.h | 31 +- 24 files changed, 1731 insertions(+), 475 deletions(-) create mode 100644 drivers/common/qat/qat_adf/adf_pf2vf_msg.h create mode 100644 drivers/common/qat/qat_adf/adf_transport_access_macros_gen4.h create mode 100644 drivers/common/qat/qat_adf/adf_transport_access_macros_gen4vf.h create mode 100644 drivers/common/qat/qat_pf2vf.c create mode 100644 drivers/common/qat/qat_pf2vf.h