mbox

[v2,00/29] New features and improvements in cnxk crypto PMD

Message ID 1639676975-1316-1-git-send-email-anoobj@marvell.com (mailing list archive)
Headers

Message

Anoob Joseph Dec. 16, 2021, 5:49 p.m. UTC
  New features and fixes to cnxk crypto PMDs
- Support for more algorithms in lookaside crypto & protocol
- Support for copy & set DF bit
- Support for CPT CTX update
- Support for security session stats in cn10k

Changes in v2
- Support for copy & set DSCP
- Support for per packet IV in cn9k
- Support for cn10k v1.19 microcode

Ankur Dwivedi (1):
  crypto/cnxk: add security session stats get

Anoob Joseph (20):
  common/cnxk: define minor opcodes for MISC opcode
  common/cnxk: add aes-xcbc key derive
  common/cnxk: fix reset of fields
  common/cnxk: verify input args
  common/cnxk: update completion code
  crypto/cnxk: clear session data before populating
  crypto/cnxk: update max sec crypto caps
  crypto/cnxk: account for CPT CTX updates and flush delays
  crypto/cnxk: use struct sizes for ctx writes
  crypto/cnxk: add skip for unsupported cases
  crypto/cnxk: handle null chained ops
  crypto/cnxk: fix inflight cnt calculation
  crypto/cnxk: use atomics to access CPT res
  crypto/cnxk: add more info on command timeout
  crypto/cnxk: fix extend tail calculation
  crypto/cnxk: add aes xcbc and null cipher
  crypto/cnxk: add copy and set DF
  crypto/cnxk: add aes cmac
  crypto/cnxk: enable copy dscp
  crypto/cnxk: update microcode completion handling

Archana Muniganti (2):
  common/cnxk: add bit fields for params
  crypto/cnxk: add per pkt IV in lookaside IPsec debug mode

Shijith Thotton (1):
  crypto/cnxk: only enable queues that are allocated

Tejasree Kondoj (5):
  crypto/cnxk: add lookaside IPsec AES-CBC-HMAC-SHA256 support
  crypto/cnxk: write CPT CTX through microcode op
  crypto/cnxk: support cnxk lookaside IPsec HMAC-SHA384/512
  crypto/cnxk: add context reload for IV
  crypto/cnxk: support lookaside IPsec AES-CTR

 doc/guides/cryptodevs/cnxk.rst                    |  50 ++++-
 doc/guides/cryptodevs/features/cn10k.ini          |  37 ++--
 doc/guides/cryptodevs/features/cn9k.ini           |  37 ++--
 doc/guides/rel_notes/release_22_03.rst            |  10 +
 drivers/common/cnxk/cnxk_security.c               |  92 ++++++--
 drivers/common/cnxk/hw/cpt.h                      |  15 ++
 drivers/common/cnxk/meson.build                   |   1 +
 drivers/common/cnxk/roc_aes.c                     | 208 ++++++++++++++++++
 drivers/common/cnxk/roc_aes.h                     |  14 ++
 drivers/common/cnxk/roc_api.h                     |   3 +
 drivers/common/cnxk/roc_cpt.c                     |   4 +-
 drivers/common/cnxk/roc_cpt.h                     |  24 +-
 drivers/common/cnxk/roc_ie_on.h                   |  47 +++-
 drivers/common/cnxk/roc_ie_ot.h                   |   4 +-
 drivers/common/cnxk/roc_se.h                      |  14 +-
 drivers/common/cnxk/version.map                   |   1 +
 drivers/crypto/cnxk/cn10k_cryptodev_ops.c         |  91 ++++----
 drivers/crypto/cnxk/cn10k_ipsec.c                 | 232 ++++++++++++++++----
 drivers/crypto/cnxk/cn10k_ipsec.h                 |  26 ++-
 drivers/crypto/cnxk/cn10k_ipsec_la_ops.h          |  28 ++-
 drivers/crypto/cnxk/cn9k_cryptodev_ops.c          |  29 ++-
 drivers/crypto/cnxk/cn9k_ipsec.c                  | 253 +++++++++++++++++-----
 drivers/crypto/cnxk/cn9k_ipsec.h                  |   2 +
 drivers/crypto/cnxk/cn9k_ipsec_la_ops.h           |  20 +-
 drivers/crypto/cnxk/cnxk_cryptodev.h              |   2 +-
 drivers/crypto/cnxk/cnxk_cryptodev_capabilities.c | 158 +++++++++++++-
 drivers/crypto/cnxk/cnxk_cryptodev_ops.c          | 245 +++++++++++++--------
 drivers/crypto/cnxk/cnxk_cryptodev_ops.h          |  17 +-
 drivers/crypto/cnxk/cnxk_cryptodev_sec.c          |   1 +
 drivers/crypto/cnxk/cnxk_ipsec.h                  |  19 +-
 drivers/crypto/cnxk/cnxk_se.h                     |  66 ++++--
 31 files changed, 1348 insertions(+), 402 deletions(-)
 create mode 100644 drivers/common/cnxk/roc_aes.c
 create mode 100644 drivers/common/cnxk/roc_aes.h