[dpdk-dev] [PATCH 00/24] drivers: introduce mlx5 crypto PMD
Shiri Kuzin
shirik at nvidia.com
Thu Apr 8 22:48:25 CEST 2021
Add a new PMD for Nvidia devices- crypto PMD.
The crypto PMD will be supported on Nvidia ConnectX6-Dx and
Bluefield 2.
The crypto PMD will add the support of encryption and decryption using
the AES-XTS symmetric algorithm.
The crypto PMD requires rdma-core and uses mlx5 DevX.
This series includes control path PMD implementation.
We are currently almost done working on the data path implementation
and doing our best effort to send the data path for rc1, but we might
be done for rc2.
If there is a suggestion or need for the series earlier, we will make
the effort to meet the requirement.
Dekel Peled (13):
common/mlx5: remove redundant spaces in header file
common/mlx5: update GENEVE TLV OPT obj name
common/mlx5: optimize read of general obj type caps
common/mlx5: add HCA cap for AES-XTS crypto
common/mlx5: support general object DEK create op
common/mlx5: add crypto en field to MKEY context
common/mlx5: support umr en field in MKEY context
common/mlx5: support general obj IMPORT KEK create
common/mlx5: support general obj CRYPTO LOGIN create
common/mlx5: add crypto BSF struct and defines
common/mlx5: support general obj CREDENTIAL create
common/mlx5: add crypto register structs and defs
common/mlx5: support register write access
Shiri Kuzin (11):
common/mlx5: share hash list tool
common/mlx5: share get ib device match function
drivers: introduce mlx5 crypto PMD
crypto/mlx5: add DEK object management
crypto/mlx5: support session operations
crypto/mlx5: add basic operations
crypto/mlx5: support queue pairs operations
crypto/mlx5: add dev stop and start operations
crypto/mlx5: add memory region management
crypto/mlx5: create login object using DevX
crypto/mlx5: adjust to the multiple data unit API
MAINTAINERS | 4 +
drivers/common/mlx5/linux/mlx5_common_os.c | 30 +-
drivers/common/mlx5/linux/mlx5_common_os.h | 5 +
drivers/common/mlx5/linux/mlx5_nl.c | 2 +-
drivers/common/mlx5/meson.build | 1 +
drivers/common/mlx5/mlx5_common.c | 2 +-
drivers/common/mlx5/mlx5_common.h | 2 +
drivers/common/mlx5/mlx5_common_devx.c | 2 +-
drivers/common/mlx5/mlx5_common_log.h | 21 +
drivers/common/mlx5/mlx5_common_mp.c | 2 +-
drivers/common/mlx5/mlx5_common_mr.c | 2 +-
drivers/common/mlx5/mlx5_common_pci.c | 17 +-
drivers/common/mlx5/mlx5_common_pci.h | 21 +-
drivers/common/mlx5/mlx5_common_utils.c | 221 ++++++
drivers/common/mlx5/mlx5_common_utils.h | 202 ++++-
drivers/common/mlx5/mlx5_devx_cmds.c | 314 +++++++-
drivers/common/mlx5/mlx5_devx_cmds.h | 66 ++
drivers/common/mlx5/mlx5_malloc.c | 2 +-
drivers/common/mlx5/mlx5_prm.h | 545 +++++++++-----
.../common/mlx5/rte_common_mlx5_exports.def | 7 +
drivers/common/mlx5/version.map | 24 +-
drivers/common/mlx5/windows/mlx5_common_os.c | 2 +-
drivers/common/mlx5/windows/mlx5_glue.c | 2 +-
drivers/compress/mlx5/mlx5_compress.c | 30 +-
drivers/crypto/meson.build | 1 +
drivers/crypto/mlx5/meson.build | 27 +
drivers/crypto/mlx5/mlx5_crypto.c | 687 ++++++++++++++++++
drivers/crypto/mlx5/mlx5_crypto.h | 67 ++
drivers/crypto/mlx5/mlx5_crypto_dek.c | 135 ++++
drivers/crypto/mlx5/mlx5_crypto_utils.h | 19 +
drivers/crypto/mlx5/version.map | 3 +
drivers/net/mlx5/mlx5_utils.c | 209 ------
drivers/net/mlx5/mlx5_utils.h | 194 +----
drivers/regex/mlx5/mlx5_regex.c | 30 +-
drivers/vdpa/mlx5/mlx5_vdpa.c | 32 +-
35 files changed, 2216 insertions(+), 714 deletions(-)
create mode 100644 drivers/common/mlx5/mlx5_common_log.h
create mode 100644 drivers/common/mlx5/mlx5_common_utils.c
create mode 100644 drivers/crypto/mlx5/meson.build
create mode 100644 drivers/crypto/mlx5/mlx5_crypto.c
create mode 100644 drivers/crypto/mlx5/mlx5_crypto.h
create mode 100644 drivers/crypto/mlx5/mlx5_crypto_dek.c
create mode 100644 drivers/crypto/mlx5/mlx5_crypto_utils.h
create mode 100644 drivers/crypto/mlx5/version.map
--
2.21.0
More information about the dev
mailing list