mbox series

[v2,00/28] net/cnxk: support for inline ipsec

Message ID 20210930170113.29030-1-ndabilpuram@marvell.com (mailing list archive)
Headers show
Series net/cnxk: support for inline ipsec | expand

Message

Nithin Dabilpuram Sept. 30, 2021, 5 p.m. UTC
Support for inline ipsec in CN9K event mode and in Cn10K event mode and
poll mode.

Kommula Shiva Shankar (1):
  common/cnxk: add CQ enable support in NIX Tx path

Nithin Dabilpuram (18):
  common/cnxk: support CPT parse header dump
  common/cnxk: allow reuse of SSO API for inline dev
  common/cnxk: change NIX debug API and queue API interface
  common/cnxk: support NIX inline device IRQ
  common/cnxk: support NIX inline device init and fini
  common/cnxk: support NIX inline inbound and outbound setup
  common/cnxk: disable CQ drop when inline inbound is enabled
  common/cnxk: dump CPT LF registers on error intr
  common/cnxk: align CPT LF enable/disable sequence
  common/cnxk: restore NIX sqb pool limit before destroy
  common/cnxk: setup aura BP conf based on nix
  net/cnxk: support inline security setup for cn9k
  net/cnxk: support inline security setup for cn10k
  net/cnxk: support Rx security offload on cn9k
  net/cnxk: support Tx security offload on cn9k
  net/cnxk: support Rx security offload on cn10k
  net/cnxk: support Tx security offload on cn10k
  net/cnxk: reflect globally enabled offloads in queue conf

Satheesh Paul (2):
  common/cnxk: support inline IPsec rte flow action
  net/cnxk: support configuring channel mask via devargs

Srujana Challa (7):
  common/cnxk: support cn9k fast path security session
  common/cnxk: support anti-replay check in SW for cn9k
  net/cnxk: support IPsec anti replay in cn9k
  net/cnxk: support IPsec transport mode in cn10k
  net/cnxk: update ethertype for mixed IPsec tunnel versions
  net/cnxk: allow zero udp6 checksum for non inline device
  net/cnxk: add crypto capabilities for AES CBC and HMAC SHA1

v2:
- Included bug fixes for second pass packets
- Updated .ini files.
- Reworded commit messages with additional description
  and abbreviation fixes

 doc/guides/nics/cnxk.rst                         |  122 +++
 doc/guides/nics/features/cnxk.ini                |    1 +
 doc/guides/nics/features/cnxk_vec.ini            |    1 +
 doc/guides/nics/features/cnxk_vf.ini             |    1 +
 doc/guides/rel_notes/release_21_11.rst           |    2 +
 drivers/common/cnxk/cnxk_security.c              |  212 +++++
 drivers/common/cnxk/cnxk_security.h              |   12 +
 drivers/common/cnxk/cnxk_security_ar.h           |  184 ++++
 drivers/common/cnxk/hw/cpt.h                     |   19 +
 drivers/common/cnxk/meson.build                  |    3 +
 drivers/common/cnxk/roc_api.h                    |   49 +-
 drivers/common/cnxk/roc_constants.h              |   58 ++
 drivers/common/cnxk/roc_cpt.c                    |   54 +-
 drivers/common/cnxk/roc_cpt.h                    |   10 +
 drivers/common/cnxk/roc_cpt_debug.c              |   63 +-
 drivers/common/cnxk/roc_cpt_priv.h               |    1 +
 drivers/common/cnxk/roc_idev.c                   |    2 +
 drivers/common/cnxk/roc_idev_priv.h              |    3 +
 drivers/common/cnxk/roc_io.h                     |    9 +
 drivers/common/cnxk/roc_io_generic.h             |    3 +-
 drivers/common/cnxk/roc_irq.c                    |    7 +-
 drivers/common/cnxk/roc_nix.c                    |    2 +-
 drivers/common/cnxk/roc_nix.h                    |    7 +
 drivers/common/cnxk/roc_nix_debug.c              |  168 +++-
 drivers/common/cnxk/roc_nix_fc.c                 |   23 +-
 drivers/common/cnxk/roc_nix_inl.c                |  778 +++++++++++++++++
 drivers/common/cnxk/roc_nix_inl.h                |  170 ++++
 drivers/common/cnxk/roc_nix_inl_dev.c            |  639 ++++++++++++++
 drivers/common/cnxk/roc_nix_inl_dev_irq.c        |  359 ++++++++
 drivers/common/cnxk/roc_nix_inl_priv.h           |   68 ++
 drivers/common/cnxk/roc_nix_priv.h               |   31 +
 drivers/common/cnxk/roc_nix_queue.c              |  137 +--
 drivers/common/cnxk/roc_npc.c                    |   27 +-
 drivers/common/cnxk/roc_npc_mcam.c               |   28 +-
 drivers/common/cnxk/roc_platform.h               |   11 +-
 drivers/common/cnxk/roc_priv.h                   |    3 +
 drivers/common/cnxk/roc_sso.c                    |   52 +-
 drivers/common/cnxk/roc_sso_priv.h               |    9 +
 drivers/common/cnxk/version.map                  |   34 +
 drivers/event/cnxk/cn10k_eventdev.c              |   93 +-
 drivers/event/cnxk/cn10k_worker.h                |  147 +++-
 drivers/event/cnxk/cn10k_worker_deq.c            |    2 +-
 drivers/event/cnxk/cn10k_worker_deq_burst.c      |    2 +-
 drivers/event/cnxk/cn10k_worker_deq_ca.c         |    2 +-
 drivers/event/cnxk/cn10k_worker_deq_tmo.c        |    2 +-
 drivers/event/cnxk/cn10k_worker_tx_enq.c         |    2 +-
 drivers/event/cnxk/cn10k_worker_tx_enq_seg.c     |    2 +-
 drivers/event/cnxk/cn9k_eventdev.c               |  182 ++--
 drivers/event/cnxk/cn9k_worker.h                 |  170 +++-
 drivers/event/cnxk/cn9k_worker_deq.c             |    2 +-
 drivers/event/cnxk/cn9k_worker_deq_burst.c       |    2 +-
 drivers/event/cnxk/cn9k_worker_deq_ca.c          |    2 +-
 drivers/event/cnxk/cn9k_worker_deq_tmo.c         |    2 +-
 drivers/event/cnxk/cn9k_worker_dual_deq.c        |    2 +-
 drivers/event/cnxk/cn9k_worker_dual_deq_burst.c  |    2 +-
 drivers/event/cnxk/cn9k_worker_dual_deq_ca.c     |    2 +-
 drivers/event/cnxk/cn9k_worker_dual_deq_tmo.c    |    2 +-
 drivers/event/cnxk/cn9k_worker_dual_tx_enq.c     |    2 +-
 drivers/event/cnxk/cn9k_worker_dual_tx_enq_seg.c |    2 +-
 drivers/event/cnxk/cn9k_worker_tx_enq.c          |    2 +-
 drivers/event/cnxk/cn9k_worker_tx_enq_seg.c      |    2 +-
 drivers/event/cnxk/cnxk_eventdev_adptr.c         |   36 +-
 drivers/net/cnxk/cn10k_ethdev.c                  |   41 +-
 drivers/net/cnxk/cn10k_ethdev.h                  |   48 ++
 drivers/net/cnxk/cn10k_ethdev_sec.c              |  492 +++++++++++
 drivers/net/cnxk/cn10k_rx.c                      |   31 +-
 drivers/net/cnxk/cn10k_rx.h                      |  649 +++++++++++---
 drivers/net/cnxk/cn10k_rx_mseg.c                 |    2 +-
 drivers/net/cnxk/cn10k_rx_vec.c                  |    4 +-
 drivers/net/cnxk/cn10k_rx_vec_mseg.c             |    4 +-
 drivers/net/cnxk/cn10k_tx.c                      |   31 +-
 drivers/net/cnxk/cn10k_tx.h                      | 1006 +++++++++++++++++++---
 drivers/net/cnxk/cn10k_tx_mseg.c                 |    2 +-
 drivers/net/cnxk/cn10k_tx_vec.c                  |    2 +-
 drivers/net/cnxk/cn10k_tx_vec_mseg.c             |    2 +-
 drivers/net/cnxk/cn9k_ethdev.c                   |   23 +
 drivers/net/cnxk/cn9k_ethdev.h                   |   64 ++
 drivers/net/cnxk/cn9k_ethdev_sec.c               |  382 ++++++++
 drivers/net/cnxk/cn9k_rx.c                       |   31 +-
 drivers/net/cnxk/cn9k_rx.h                       |  493 +++++++++--
 drivers/net/cnxk/cn9k_rx_mseg.c                  |    2 +-
 drivers/net/cnxk/cn9k_rx_vec.c                   |    2 +-
 drivers/net/cnxk/cn9k_rx_vec_mseg.c              |    2 +-
 drivers/net/cnxk/cn9k_tx.c                       |   29 +-
 drivers/net/cnxk/cn9k_tx.h                       |  393 ++++++---
 drivers/net/cnxk/cn9k_tx_mseg.c                  |    2 +-
 drivers/net/cnxk/cn9k_tx_vec.c                   |    2 +-
 drivers/net/cnxk/cn9k_tx_vec_mseg.c              |    2 +-
 drivers/net/cnxk/cnxk_ethdev.c                   |  243 +++++-
 drivers/net/cnxk/cnxk_ethdev.h                   |  125 ++-
 drivers/net/cnxk/cnxk_ethdev_devargs.c           |   88 +-
 drivers/net/cnxk/cnxk_ethdev_sec.c               |  315 +++++++
 drivers/net/cnxk/cnxk_lookup.c                   |   50 +-
 drivers/net/cnxk/meson.build                     |    3 +
 drivers/net/cnxk/version.map                     |    5 +
 usertools/dpdk-devbind.py                        |    8 +-
 96 files changed, 7686 insertions(+), 918 deletions(-)
 create mode 100644 drivers/common/cnxk/cnxk_security_ar.h
 create mode 100644 drivers/common/cnxk/roc_constants.h
 create mode 100644 drivers/common/cnxk/roc_nix_inl.c
 create mode 100644 drivers/common/cnxk/roc_nix_inl.h
 create mode 100644 drivers/common/cnxk/roc_nix_inl_dev.c
 create mode 100644 drivers/common/cnxk/roc_nix_inl_dev_irq.c
 create mode 100644 drivers/common/cnxk/roc_nix_inl_priv.h
 create mode 100644 drivers/net/cnxk/cn10k_ethdev_sec.c
 create mode 100644 drivers/net/cnxk/cn9k_ethdev_sec.c
 create mode 100644 drivers/net/cnxk/cnxk_ethdev_sec.c

Comments

Jerin Jacob Oct. 1, 2021, 5:37 a.m. UTC | #1
On Thu, Sep 30, 2021 at 10:32 PM Nithin Dabilpuram
<ndabilpuram@marvell.com> wrote:
>
> Support for inline ipsec in CN9K event mode and in Cn10K event mode and
> poll mode.
>
> Kommula Shiva Shankar (1):
>   common/cnxk: add CQ enable support in NIX Tx path
>
> Nithin Dabilpuram (18):
>   common/cnxk: support CPT parse header dump
>   common/cnxk: allow reuse of SSO API for inline dev
>   common/cnxk: change NIX debug API and queue API interface
>   common/cnxk: support NIX inline device IRQ
>   common/cnxk: support NIX inline device init and fini
>   common/cnxk: support NIX inline inbound and outbound setup
>   common/cnxk: disable CQ drop when inline inbound is enabled
>   common/cnxk: dump CPT LF registers on error intr
>   common/cnxk: align CPT LF enable/disable sequence
>   common/cnxk: restore NIX sqb pool limit before destroy
>   common/cnxk: setup aura BP conf based on nix
>   net/cnxk: support inline security setup for cn9k
>   net/cnxk: support inline security setup for cn10k
>   net/cnxk: support Rx security offload on cn9k
>   net/cnxk: support Tx security offload on cn9k
>   net/cnxk: support Rx security offload on cn10k
>   net/cnxk: support Tx security offload on cn10k
>   net/cnxk: reflect globally enabled offloads in queue conf
>
> Satheesh Paul (2):
>   common/cnxk: support inline IPsec rte flow action
>   net/cnxk: support configuring channel mask via devargs
>
> Srujana Challa (7):
>   common/cnxk: support cn9k fast path security session
>   common/cnxk: support anti-replay check in SW for cn9k
>   net/cnxk: support IPsec anti replay in cn9k
>   net/cnxk: support IPsec transport mode in cn10k
>   net/cnxk: update ethertype for mixed IPsec tunnel versions
>   net/cnxk: allow zero udp6 checksum for non inline device
>   net/cnxk: add crypto capabilities for AES CBC and HMAC SHA1


Could you please rebase with next-net-mrvl


[for-next-net]dell[dpdk-next-net-mrvl] $ git pw series apply 19307
Applying: common/cnxk: support cn9k fast path security session
Applying: common/cnxk: support CPT parse header dump
Applying: common/cnxk: allow reuse of SSO API for inline dev
Applying: common/cnxk: change NIX debug API and queue API interface
error: sha1 information is lacking or useless
(drivers/common/cnxk/roc_nix_priv.h).
error: could not build fake ancestor
hint: Use 'git am --show-current-patch=diff' to see the failed patch
Patch failed at 0004 common/cnxk: change NIX debug API and queue API interface
When you have resolved this problem, run "git am --continue".
If you prefer to skip this patch, run "git am --skip" instead.
To restore the original branch and stop patching, run "git am --abort".

> v2:
> - Included bug fixes for second pass packets
> - Updated .ini files.
> - Reworded commit messages with additional description
>   and abbreviation fixes
>
>  doc/guides/nics/cnxk.rst                         |  122 +++
>  doc/guides/nics/features/cnxk.ini                |    1 +
>  doc/guides/nics/features/cnxk_vec.ini            |    1 +
>  doc/guides/nics/features/cnxk_vf.ini             |    1 +
>  doc/guides/rel_notes/release_21_11.rst           |    2 +
>  drivers/common/cnxk/cnxk_security.c              |  212 +++++
>  drivers/common/cnxk/cnxk_security.h              |   12 +
>  drivers/common/cnxk/cnxk_security_ar.h           |  184 ++++
>  drivers/common/cnxk/hw/cpt.h                     |   19 +
>  drivers/common/cnxk/meson.build                  |    3 +
>  drivers/common/cnxk/roc_api.h                    |   49 +-
>  drivers/common/cnxk/roc_constants.h              |   58 ++
>  drivers/common/cnxk/roc_cpt.c                    |   54 +-
>  drivers/common/cnxk/roc_cpt.h                    |   10 +
>  drivers/common/cnxk/roc_cpt_debug.c              |   63 +-
>  drivers/common/cnxk/roc_cpt_priv.h               |    1 +
>  drivers/common/cnxk/roc_idev.c                   |    2 +
>  drivers/common/cnxk/roc_idev_priv.h              |    3 +
>  drivers/common/cnxk/roc_io.h                     |    9 +
>  drivers/common/cnxk/roc_io_generic.h             |    3 +-
>  drivers/common/cnxk/roc_irq.c                    |    7 +-
>  drivers/common/cnxk/roc_nix.c                    |    2 +-
>  drivers/common/cnxk/roc_nix.h                    |    7 +
>  drivers/common/cnxk/roc_nix_debug.c              |  168 +++-
>  drivers/common/cnxk/roc_nix_fc.c                 |   23 +-
>  drivers/common/cnxk/roc_nix_inl.c                |  778 +++++++++++++++++
>  drivers/common/cnxk/roc_nix_inl.h                |  170 ++++
>  drivers/common/cnxk/roc_nix_inl_dev.c            |  639 ++++++++++++++
>  drivers/common/cnxk/roc_nix_inl_dev_irq.c        |  359 ++++++++
>  drivers/common/cnxk/roc_nix_inl_priv.h           |   68 ++
>  drivers/common/cnxk/roc_nix_priv.h               |   31 +
>  drivers/common/cnxk/roc_nix_queue.c              |  137 +--
>  drivers/common/cnxk/roc_npc.c                    |   27 +-
>  drivers/common/cnxk/roc_npc_mcam.c               |   28 +-
>  drivers/common/cnxk/roc_platform.h               |   11 +-
>  drivers/common/cnxk/roc_priv.h                   |    3 +
>  drivers/common/cnxk/roc_sso.c                    |   52 +-
>  drivers/common/cnxk/roc_sso_priv.h               |    9 +
>  drivers/common/cnxk/version.map                  |   34 +
>  drivers/event/cnxk/cn10k_eventdev.c              |   93 +-
>  drivers/event/cnxk/cn10k_worker.h                |  147 +++-
>  drivers/event/cnxk/cn10k_worker_deq.c            |    2 +-
>  drivers/event/cnxk/cn10k_worker_deq_burst.c      |    2 +-
>  drivers/event/cnxk/cn10k_worker_deq_ca.c         |    2 +-
>  drivers/event/cnxk/cn10k_worker_deq_tmo.c        |    2 +-
>  drivers/event/cnxk/cn10k_worker_tx_enq.c         |    2 +-
>  drivers/event/cnxk/cn10k_worker_tx_enq_seg.c     |    2 +-
>  drivers/event/cnxk/cn9k_eventdev.c               |  182 ++--
>  drivers/event/cnxk/cn9k_worker.h                 |  170 +++-
>  drivers/event/cnxk/cn9k_worker_deq.c             |    2 +-
>  drivers/event/cnxk/cn9k_worker_deq_burst.c       |    2 +-
>  drivers/event/cnxk/cn9k_worker_deq_ca.c          |    2 +-
>  drivers/event/cnxk/cn9k_worker_deq_tmo.c         |    2 +-
>  drivers/event/cnxk/cn9k_worker_dual_deq.c        |    2 +-
>  drivers/event/cnxk/cn9k_worker_dual_deq_burst.c  |    2 +-
>  drivers/event/cnxk/cn9k_worker_dual_deq_ca.c     |    2 +-
>  drivers/event/cnxk/cn9k_worker_dual_deq_tmo.c    |    2 +-
>  drivers/event/cnxk/cn9k_worker_dual_tx_enq.c     |    2 +-
>  drivers/event/cnxk/cn9k_worker_dual_tx_enq_seg.c |    2 +-
>  drivers/event/cnxk/cn9k_worker_tx_enq.c          |    2 +-
>  drivers/event/cnxk/cn9k_worker_tx_enq_seg.c      |    2 +-
>  drivers/event/cnxk/cnxk_eventdev_adptr.c         |   36 +-
>  drivers/net/cnxk/cn10k_ethdev.c                  |   41 +-
>  drivers/net/cnxk/cn10k_ethdev.h                  |   48 ++
>  drivers/net/cnxk/cn10k_ethdev_sec.c              |  492 +++++++++++
>  drivers/net/cnxk/cn10k_rx.c                      |   31 +-
>  drivers/net/cnxk/cn10k_rx.h                      |  649 +++++++++++---
>  drivers/net/cnxk/cn10k_rx_mseg.c                 |    2 +-
>  drivers/net/cnxk/cn10k_rx_vec.c                  |    4 +-
>  drivers/net/cnxk/cn10k_rx_vec_mseg.c             |    4 +-
>  drivers/net/cnxk/cn10k_tx.c                      |   31 +-
>  drivers/net/cnxk/cn10k_tx.h                      | 1006 +++++++++++++++++++---
>  drivers/net/cnxk/cn10k_tx_mseg.c                 |    2 +-
>  drivers/net/cnxk/cn10k_tx_vec.c                  |    2 +-
>  drivers/net/cnxk/cn10k_tx_vec_mseg.c             |    2 +-
>  drivers/net/cnxk/cn9k_ethdev.c                   |   23 +
>  drivers/net/cnxk/cn9k_ethdev.h                   |   64 ++
>  drivers/net/cnxk/cn9k_ethdev_sec.c               |  382 ++++++++
>  drivers/net/cnxk/cn9k_rx.c                       |   31 +-
>  drivers/net/cnxk/cn9k_rx.h                       |  493 +++++++++--
>  drivers/net/cnxk/cn9k_rx_mseg.c                  |    2 +-
>  drivers/net/cnxk/cn9k_rx_vec.c                   |    2 +-
>  drivers/net/cnxk/cn9k_rx_vec_mseg.c              |    2 +-
>  drivers/net/cnxk/cn9k_tx.c                       |   29 +-
>  drivers/net/cnxk/cn9k_tx.h                       |  393 ++++++---
>  drivers/net/cnxk/cn9k_tx_mseg.c                  |    2 +-
>  drivers/net/cnxk/cn9k_tx_vec.c                   |    2 +-
>  drivers/net/cnxk/cn9k_tx_vec_mseg.c              |    2 +-
>  drivers/net/cnxk/cnxk_ethdev.c                   |  243 +++++-
>  drivers/net/cnxk/cnxk_ethdev.h                   |  125 ++-
>  drivers/net/cnxk/cnxk_ethdev_devargs.c           |   88 +-
>  drivers/net/cnxk/cnxk_ethdev_sec.c               |  315 +++++++
>  drivers/net/cnxk/cnxk_lookup.c                   |   50 +-
>  drivers/net/cnxk/meson.build                     |    3 +
>  drivers/net/cnxk/version.map                     |    5 +
>  usertools/dpdk-devbind.py                        |    8 +-
>  96 files changed, 7686 insertions(+), 918 deletions(-)
>  create mode 100644 drivers/common/cnxk/cnxk_security_ar.h
>  create mode 100644 drivers/common/cnxk/roc_constants.h
>  create mode 100644 drivers/common/cnxk/roc_nix_inl.c
>  create mode 100644 drivers/common/cnxk/roc_nix_inl.h
>  create mode 100644 drivers/common/cnxk/roc_nix_inl_dev.c
>  create mode 100644 drivers/common/cnxk/roc_nix_inl_dev_irq.c
>  create mode 100644 drivers/common/cnxk/roc_nix_inl_priv.h
>  create mode 100644 drivers/net/cnxk/cn10k_ethdev_sec.c
>  create mode 100644 drivers/net/cnxk/cn9k_ethdev_sec.c
>  create mode 100644 drivers/net/cnxk/cnxk_ethdev_sec.c
>
> --
> 2.8.4
>