DPDK patches and discussions
 help / color / mirror / Atom feed
* [dpdk-dev] [PATCH 00/52] Add Marvell CNXK common driver
@ 2021-03-05 13:38 Nithin Dabilpuram
  2021-03-05 13:38 ` [dpdk-dev] [PATCH 01/52] config/arm: add support for Marvell CN10K Nithin Dabilpuram
                   ` (55 more replies)
  0 siblings, 56 replies; 275+ messages in thread
From: Nithin Dabilpuram @ 2021-03-05 13:38 UTC (permalink / raw)
  To: dev
  Cc: jerinj, skori, skoteshwar, pbhagavatula, kirankumark, psatheesh,
	asekhar, Nithin Dabilpuram

This patchset adds initial support for common code for 
Marvell CN10K SoC. Based on this common 'cnxk' driver, new PMD's
such as 'net/cnxk', 'mempool/cnxk', 'event/cnxk' etc, will be added 
later on.

Initially 'cnxk' drivers will only support Marvell CN106XX SoC. In future,
when code is ready, CN9K/octeontx2 will also be supported by the same set
of drivers and 'common/octeontx2' and its associated drivers will be
deprecated.

Ashwin Sekhar T K (8):
  common/cnxk: add base npa device support
  common/cnxk: add npa irq support
  common/cnxk: add npa debug support
  common/cnxk: add npa pool HW ops
  common/cnxk: add npa bulk alloc/free support
  common/cnxk: add npa performance counter support
  common/cnxk: add npa batch alloc/free support
  common/cnxk: add npa lf init/fini callback support

Jerin Jacob (14):
  common/cnxk: add build infrastructre and HW definition
  common/cnxk: add model init and IO handling API
  common/cnxk: add interrupt helper API
  common/cnxk: add mbox request and response definitions
  common/cnxk: add mailbox base infra
  common/cnxk: add base device class
  common/cnxk: add VF support to base device class
  common/cnxk: add base nix support
  common/cnxk: add nix irq support
  common/cnxk: add nix Rx queue management API
  common/cnxk: add nix Tx queue management API
  common/cnxk: add nix RSS support
  common/cnxk: add nix stats support
  common/cnxk: add nix debug dump support

Kiran Kumar K (5):
  common/cnxk: add npc support
  common/cnxk: add npc helper API
  common/cnxk: add mcam utility API
  common/cnxk: add npc parsing API
  common/cnxk: add npc init and fini support

Nithin Dabilpuram (8):
  common/cnxk: add nix traffic management base support
  common/cnxk: add nix tm support to add/delete node
  common/cnxk: add nix tm helper to alloc and free resource
  common/cnxk: add nix tm hierarchy enable/disable
  common/cnxk: add nix tm support for internal hierarchy
  common/cnxk: add nix tm dynamic update support
  common/cnxk: add nix tm debug support and misc utils
  doc: add Marvell CNXK platform guide

Pavan Nikhilesh (8):
  config/arm: add support for Marvell CN10K
  common/cnxk: add base sso device support
  common/cnxk: add sso hws interface
  common/cnxk: add sso hwgrp interface
  common/cnxk: add sso irq support
  common/cnxk: add sso debug support
  common/cnxk: add base tim device support
  common/cnxk: add tim irq support

Satha Rao (2):
  common/cnxk: add support for nix extended stats
  common/cnxk: add nix tm shaper profile add support

Sunil Kumar Kori (6):
  common/cnxk: add nix MAC operations support
  common/cnxk: add nix specific npc operations
  common/cnxk: add nix ptp support
  common/cnxk: add VLAN filter support
  common/cnxk: add nix flow control support
  common/cnxk: add nix LSO support and misc utils

Vidya Sagar Velumuri (1):
  common/cnxk: add nix inline IPsec config API

 MAINTAINERS                                        |    9 +
 config/arm/arm64_cn10k_linux_gcc                   |   20 +
 doc/guides/platform/cnxk.rst                       |  578 ++++
 .../img/cnxk_packet_flow_hw_accelerators.svg       | 2795 ++++++++++++++++++++
 .../platform/img/cnxk_resource_virtualization.svg  | 2428 +++++++++++++++++
 doc/guides/platform/index.rst                      |    1 +
 drivers/common/cnxk/hw/nix.h                       | 2187 +++++++++++++++
 drivers/common/cnxk/hw/npa.h                       |  376 +++
 drivers/common/cnxk/hw/npc.h                       |  525 ++++
 drivers/common/cnxk/hw/rvu.h                       |  221 ++
 drivers/common/cnxk/hw/sdp.h                       |  182 ++
 drivers/common/cnxk/hw/sso.h                       |  233 ++
 drivers/common/cnxk/hw/ssow.h                      |   70 +
 drivers/common/cnxk/hw/tim.h                       |   49 +
 drivers/common/cnxk/meson.build                    |   49 +
 drivers/common/cnxk/roc_api.h                      |  103 +
 drivers/common/cnxk/roc_bitfield.h                 |   15 +
 drivers/common/cnxk/roc_bits.h                     |   32 +
 drivers/common/cnxk/roc_dev.c                      | 1190 +++++++++
 drivers/common/cnxk/roc_dev_priv.h                 |  107 +
 drivers/common/cnxk/roc_idev.c                     |  184 ++
 drivers/common/cnxk/roc_idev.h                     |   17 +
 drivers/common/cnxk/roc_idev_priv.h                |   39 +
 drivers/common/cnxk/roc_io.h                       |  187 ++
 drivers/common/cnxk/roc_io_generic.h               |  122 +
 drivers/common/cnxk/roc_irq.c                      |  249 ++
 drivers/common/cnxk/roc_mbox.c                     |  483 ++++
 drivers/common/cnxk/roc_mbox.h                     | 1732 ++++++++++++
 drivers/common/cnxk/roc_mbox_priv.h                |  215 ++
 drivers/common/cnxk/roc_model.c                    |  148 ++
 drivers/common/cnxk/roc_model.h                    |  103 +
 drivers/common/cnxk/roc_nix.c                      |  439 +++
 drivers/common/cnxk/roc_nix.h                      |  573 ++++
 drivers/common/cnxk/roc_nix_debug.c                | 1136 ++++++++
 drivers/common/cnxk/roc_nix_fc.c                   |  251 ++
 drivers/common/cnxk/roc_nix_irq.c                  |  495 ++++
 drivers/common/cnxk/roc_nix_mac.c                  |  298 +++
 drivers/common/cnxk/roc_nix_mcast.c                |   98 +
 drivers/common/cnxk/roc_nix_npc.c                  |  103 +
 drivers/common/cnxk/roc_nix_ops.c                  |  416 +++
 drivers/common/cnxk/roc_nix_priv.h                 |  394 +++
 drivers/common/cnxk/roc_nix_ptp.c                  |  122 +
 drivers/common/cnxk/roc_nix_queue.c                |  863 ++++++
 drivers/common/cnxk/roc_nix_rss.c                  |  219 ++
 drivers/common/cnxk/roc_nix_stats.c                |  411 +++
 drivers/common/cnxk/roc_nix_tm.c                   | 1385 ++++++++++
 drivers/common/cnxk/roc_nix_tm_ops.c               | 1031 ++++++++
 drivers/common/cnxk/roc_nix_tm_utils.c             | 1002 +++++++
 drivers/common/cnxk/roc_nix_vlan.c                 |  205 ++
 drivers/common/cnxk/roc_nix_xstats.h               |  204 ++
 drivers/common/cnxk/roc_npa.c                      |  823 ++++++
 drivers/common/cnxk/roc_npa.h                      |  661 +++++
 drivers/common/cnxk/roc_npa_debug.c                |  184 ++
 drivers/common/cnxk/roc_npa_irq.c                  |  298 +++
 drivers/common/cnxk/roc_npa_priv.h                 |   63 +
 drivers/common/cnxk/roc_npc.c                      |  713 +++++
 drivers/common/cnxk/roc_npc.h                      |  169 ++
 drivers/common/cnxk/roc_npc_mcam.c                 |  708 +++++
 drivers/common/cnxk/roc_npc_parse.c                |  703 +++++
 drivers/common/cnxk/roc_npc_priv.h                 |  426 +++
 drivers/common/cnxk/roc_npc_utils.c                |  631 +++++
 drivers/common/cnxk/roc_platform.c                 |   38 +
 drivers/common/cnxk/roc_platform.h                 |  182 ++
 drivers/common/cnxk/roc_priv.h                     |   35 +
 drivers/common/cnxk/roc_sso.c                      |  540 ++++
 drivers/common/cnxk/roc_sso.h                      |   65 +
 drivers/common/cnxk/roc_sso_debug.c                |   68 +
 drivers/common/cnxk/roc_sso_irq.c                  |  164 ++
 drivers/common/cnxk/roc_sso_priv.h                 |   50 +
 drivers/common/cnxk/roc_tim.c                      |  314 +++
 drivers/common/cnxk/roc_tim.h                      |   43 +
 drivers/common/cnxk/roc_tim_irq.c                  |  104 +
 drivers/common/cnxk/roc_tim_priv.h                 |   30 +
 drivers/common/cnxk/roc_util_priv.h                |   14 +
 drivers/common/cnxk/roc_utils.c                    |  239 ++
 drivers/common/cnxk/roc_utils.h                    |   15 +
 drivers/common/cnxk/version.map                    |  201 ++
 drivers/meson.build                                |    1 +
 78 files changed, 31776 insertions(+)
 create mode 100644 config/arm/arm64_cn10k_linux_gcc
 create mode 100644 doc/guides/platform/cnxk.rst
 create mode 100644 doc/guides/platform/img/cnxk_packet_flow_hw_accelerators.svg
 create mode 100644 doc/guides/platform/img/cnxk_resource_virtualization.svg
 create mode 100644 drivers/common/cnxk/hw/nix.h
 create mode 100644 drivers/common/cnxk/hw/npa.h
 create mode 100644 drivers/common/cnxk/hw/npc.h
 create mode 100644 drivers/common/cnxk/hw/rvu.h
 create mode 100644 drivers/common/cnxk/hw/sdp.h
 create mode 100644 drivers/common/cnxk/hw/sso.h
 create mode 100644 drivers/common/cnxk/hw/ssow.h
 create mode 100644 drivers/common/cnxk/hw/tim.h
 create mode 100644 drivers/common/cnxk/meson.build
 create mode 100644 drivers/common/cnxk/roc_api.h
 create mode 100644 drivers/common/cnxk/roc_bitfield.h
 create mode 100644 drivers/common/cnxk/roc_bits.h
 create mode 100644 drivers/common/cnxk/roc_dev.c
 create mode 100644 drivers/common/cnxk/roc_dev_priv.h
 create mode 100644 drivers/common/cnxk/roc_idev.c
 create mode 100644 drivers/common/cnxk/roc_idev.h
 create mode 100644 drivers/common/cnxk/roc_idev_priv.h
 create mode 100644 drivers/common/cnxk/roc_io.h
 create mode 100644 drivers/common/cnxk/roc_io_generic.h
 create mode 100644 drivers/common/cnxk/roc_irq.c
 create mode 100644 drivers/common/cnxk/roc_mbox.c
 create mode 100644 drivers/common/cnxk/roc_mbox.h
 create mode 100644 drivers/common/cnxk/roc_mbox_priv.h
 create mode 100644 drivers/common/cnxk/roc_model.c
 create mode 100644 drivers/common/cnxk/roc_model.h
 create mode 100644 drivers/common/cnxk/roc_nix.c
 create mode 100644 drivers/common/cnxk/roc_nix.h
 create mode 100644 drivers/common/cnxk/roc_nix_debug.c
 create mode 100644 drivers/common/cnxk/roc_nix_fc.c
 create mode 100644 drivers/common/cnxk/roc_nix_irq.c
 create mode 100644 drivers/common/cnxk/roc_nix_mac.c
 create mode 100644 drivers/common/cnxk/roc_nix_mcast.c
 create mode 100644 drivers/common/cnxk/roc_nix_npc.c
 create mode 100644 drivers/common/cnxk/roc_nix_ops.c
 create mode 100644 drivers/common/cnxk/roc_nix_priv.h
 create mode 100644 drivers/common/cnxk/roc_nix_ptp.c
 create mode 100644 drivers/common/cnxk/roc_nix_queue.c
 create mode 100644 drivers/common/cnxk/roc_nix_rss.c
 create mode 100644 drivers/common/cnxk/roc_nix_stats.c
 create mode 100644 drivers/common/cnxk/roc_nix_tm.c
 create mode 100644 drivers/common/cnxk/roc_nix_tm_ops.c
 create mode 100644 drivers/common/cnxk/roc_nix_tm_utils.c
 create mode 100644 drivers/common/cnxk/roc_nix_vlan.c
 create mode 100644 drivers/common/cnxk/roc_nix_xstats.h
 create mode 100644 drivers/common/cnxk/roc_npa.c
 create mode 100644 drivers/common/cnxk/roc_npa.h
 create mode 100644 drivers/common/cnxk/roc_npa_debug.c
 create mode 100644 drivers/common/cnxk/roc_npa_irq.c
 create mode 100644 drivers/common/cnxk/roc_npa_priv.h
 create mode 100644 drivers/common/cnxk/roc_npc.c
 create mode 100644 drivers/common/cnxk/roc_npc.h
 create mode 100644 drivers/common/cnxk/roc_npc_mcam.c
 create mode 100644 drivers/common/cnxk/roc_npc_parse.c
 create mode 100644 drivers/common/cnxk/roc_npc_priv.h
 create mode 100644 drivers/common/cnxk/roc_npc_utils.c
 create mode 100644 drivers/common/cnxk/roc_platform.c
 create mode 100644 drivers/common/cnxk/roc_platform.h
 create mode 100644 drivers/common/cnxk/roc_priv.h
 create mode 100644 drivers/common/cnxk/roc_sso.c
 create mode 100644 drivers/common/cnxk/roc_sso.h
 create mode 100644 drivers/common/cnxk/roc_sso_debug.c
 create mode 100644 drivers/common/cnxk/roc_sso_irq.c
 create mode 100644 drivers/common/cnxk/roc_sso_priv.h
 create mode 100644 drivers/common/cnxk/roc_tim.c
 create mode 100644 drivers/common/cnxk/roc_tim.h
 create mode 100644 drivers/common/cnxk/roc_tim_irq.c
 create mode 100644 drivers/common/cnxk/roc_tim_priv.h
 create mode 100644 drivers/common/cnxk/roc_util_priv.h
 create mode 100644 drivers/common/cnxk/roc_utils.c
 create mode 100644 drivers/common/cnxk/roc_utils.h
 create mode 100644 drivers/common/cnxk/version.map

-- 
2.8.4


^ permalink raw reply	[flat|nested] 275+ messages in thread