mbox

[00/15] Add support for fourth generation of Intel QuickAssist Technology devices

Message ID 20210531141027.13289-1-arkadiuszx.kusztal@intel.com (mailing list archive)
Headers

Message

Kusztal, ArkadiuszX May 31, 2021, 2:10 p.m. UTC
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