mbox series

[v2,00/17] Add CPT in Marvell CNXK common driver

Message ID 1624599410-29689-1-git-send-email-anoobj@marvell.com (mailing list archive)
Headers
Series Add CPT in Marvell CNXK common driver |

Message

Anoob Joseph June 25, 2021, 5:36 a.m. UTC
  This patchset adds initial support for CPT in common code for Marvell CN10K SoC.

CPT is the hardware cryptographic block available in 'cnxk' family SoC. CPT,
with its microcoded engines can support symmetric, asymmetric and IPsec
operations. CPT can associate with NIX (rte_ethdev) to enable inline IPsec
functionality. Similarly, CPT can associate with SSO (rte_eventdev) to
enable crypto adapter.

Based on CNXK common driver, new crypto PMDs would be added under 'crypto/cnxk'.

Changes in v2
- Moved FPM & EC tables to RoC
- Moved set_key routines to RoC
- Added inline IPsec required mboxes and framework
- Added security common code
- Added plt_dp_* log based on Akhil's comment

Aakash Sasidharan (2):
  common/cnxk: add CPT diagnostics
  common/cnxk: add CPT LF flush

Ankur Dwivedi (1):
  common/cnxk: add SE set key functions in roc

Anoob Joseph (3):
  common/cnxk: add CPT dev config routines
  common/cnxk: add idev CPT set - get
  common/cnxk: add lmtline init

Archana Muniganti (1):
  common/cnxk: add CPT LF config

Kiran Kumar Kokkilagadda (4):
  common/cnxk: add SE microcode defines
  common/cnxk: add AE microcode defines
  common/cnxk: add fpm tables
  common/cnxk: add EC grp static vectors

Srujana Challa (3):
  common/cnxk: update Rx inline IPsec mbox message format
  common/cnxk: add IE microcode defines
  common/cnxk: add IPsec common code

Vidya Sagar Velumuri (3):
  common/cnxk: add CPT HW defines
  common/cnxk: add mbox to configure RXC
  common/cnxk: add inline IPsec configuration mbox

 drivers/common/cnxk/cnxk_security.c     |  468 +++++++++++++
 drivers/common/cnxk/cnxk_security.h     |   49 ++
 drivers/common/cnxk/hw/cpt.h            |  291 ++++++++
 drivers/common/cnxk/meson.build         |   11 +-
 drivers/common/cnxk/roc_ae.c            |  142 ++++
 drivers/common/cnxk/roc_ae.h            |   63 ++
 drivers/common/cnxk/roc_ae_fpm_tables.c | 1140 +++++++++++++++++++++++++++++++
 drivers/common/cnxk/roc_ae_fpm_tables.h |   13 +
 drivers/common/cnxk/roc_api.h           |   16 +
 drivers/common/cnxk/roc_cpt.c           |  828 ++++++++++++++++++++++
 drivers/common/cnxk/roc_cpt.h           |  145 ++++
 drivers/common/cnxk/roc_cpt_debug.c     |  167 +++++
 drivers/common/cnxk/roc_cpt_priv.h      |   41 ++
 drivers/common/cnxk/roc_dev.c           |    2 +
 drivers/common/cnxk/roc_dev_priv.h      |    1 +
 drivers/common/cnxk/roc_idev.c          |   21 +
 drivers/common/cnxk/roc_idev.h          |    3 +
 drivers/common/cnxk/roc_idev_priv.h     |    2 +
 drivers/common/cnxk/roc_ie.h            |   19 +
 drivers/common/cnxk/roc_ie_on.h         |  152 +++++
 drivers/common/cnxk/roc_ie_ot.h         |  534 +++++++++++++++
 drivers/common/cnxk/roc_mbox.h          |    3 +
 drivers/common/cnxk/roc_platform.c      |    1 +
 drivers/common/cnxk/roc_platform.h      |    9 +
 drivers/common/cnxk/roc_priv.h          |    3 +
 drivers/common/cnxk/roc_se.c            |  342 ++++++++++
 drivers/common/cnxk/roc_se.h            |  275 ++++++++
 drivers/common/cnxk/version.map         |   32 +
 28 files changed, 4772 insertions(+), 1 deletion(-)
 create mode 100644 drivers/common/cnxk/cnxk_security.c
 create mode 100644 drivers/common/cnxk/cnxk_security.h
 create mode 100644 drivers/common/cnxk/hw/cpt.h
 create mode 100644 drivers/common/cnxk/roc_ae.c
 create mode 100644 drivers/common/cnxk/roc_ae.h
 create mode 100644 drivers/common/cnxk/roc_ae_fpm_tables.c
 create mode 100644 drivers/common/cnxk/roc_ae_fpm_tables.h
 create mode 100644 drivers/common/cnxk/roc_cpt.c
 create mode 100644 drivers/common/cnxk/roc_cpt.h
 create mode 100644 drivers/common/cnxk/roc_cpt_debug.c
 create mode 100644 drivers/common/cnxk/roc_cpt_priv.h
 create mode 100644 drivers/common/cnxk/roc_ie.h
 create mode 100644 drivers/common/cnxk/roc_ie_on.h
 create mode 100644 drivers/common/cnxk/roc_ie_ot.h
 create mode 100644 drivers/common/cnxk/roc_se.c
 create mode 100644 drivers/common/cnxk/roc_se.h
  

Comments

Akhil Goyal June 28, 2021, 8:56 a.m. UTC | #1
> This patchset adds initial support for CPT in common code for Marvell CN10K
> SoC.
> 
> CPT is the hardware cryptographic block available in 'cnxk' family SoC. CPT,
> with its microcoded engines can support symmetric, asymmetric and IPsec
> operations. CPT can associate with NIX (rte_ethdev) to enable inline IPsec
> functionality. Similarly, CPT can associate with SSO (rte_eventdev) to
> enable crypto adapter.
> 
> Based on CNXK common driver, new crypto PMDs would be added under
> 'crypto/cnxk'.
> 
> Changes in v2
> - Moved FPM & EC tables to RoC
> - Moved set_key routines to RoC
> - Added inline IPsec required mboxes and framework
> - Added security common code
> - Added plt_dp_* log based on Akhil's comment
> 
Series Acked-by: Akhil Goyal <gakhil@marvell.com>
  
Akhil Goyal June 28, 2021, 9:06 a.m. UTC | #2
> > This patchset adds initial support for CPT in common code for Marvell
> CN10K
> > SoC.
> >
> > CPT is the hardware cryptographic block available in 'cnxk' family SoC. CPT,
> > with its microcoded engines can support symmetric, asymmetric and IPsec
> > operations. CPT can associate with NIX (rte_ethdev) to enable inline IPsec
> > functionality. Similarly, CPT can associate with SSO (rte_eventdev) to
> > enable crypto adapter.
> >
> > Based on CNXK common driver, new crypto PMDs would be added under
> > 'crypto/cnxk'.
> >
> > Changes in v2
> > - Moved FPM & EC tables to RoC
> > - Moved set_key routines to RoC
> > - Added inline IPsec required mboxes and framework
> > - Added security common code
> > - Added plt_dp_* log based on Akhil's comment
> >
> Series Acked-by: Akhil Goyal <gakhil@marvell.com>

A couple of small issues fixed while applying in patch title/description.

Applied to dpdk-next-crypto

Thanks.