[net-next PATCH v6 0/5] octeontx2: CN20K NPA Halo context support

Subbaraya Sundeep posted 5 patches 1 week, 6 days ago
.../ethernet/marvell/octeontx2/af/cn20k/api.h |   3 +
.../marvell/octeontx2/af/cn20k/debugfs.c      |  60 +++++
.../marvell/octeontx2/af/cn20k/debugfs.h      |   2 +
.../ethernet/marvell/octeontx2/af/cn20k/npa.c | 139 ++++++++++++
.../ethernet/marvell/octeontx2/af/cn20k/reg.h |   7 +
.../marvell/octeontx2/af/cn20k/struct.h       |  81 +++++++
.../net/ethernet/marvell/octeontx2/af/mbox.h  |  25 +++
.../net/ethernet/marvell/octeontx2/af/rvu.h   |   4 +
.../marvell/octeontx2/af/rvu_debugfs.c        |  71 +++++-
.../ethernet/marvell/octeontx2/af/rvu_npa.c   |  96 ++++++--
.../marvell/octeontx2/af/rvu_struct.h         |   7 +
.../ethernet/marvell/octeontx2/nic/cn20k.c    | 209 +++++++++---------
.../ethernet/marvell/octeontx2/nic/cn20k.h    |   3 +
.../marvell/octeontx2/nic/otx2_common.h       |   3 +
.../ethernet/marvell/octeontx2/nic/otx2_pf.c  |   8 +
15 files changed, 587 insertions(+), 131 deletions(-)
[net-next PATCH v6 0/5] octeontx2: CN20K NPA Halo context support
Posted by Subbaraya Sundeep 1 week, 6 days ago
This series adds NPA Halo support for CN20K in the octeontx2 AF and
PF drivers. On CN20K, NPA supports a unified "Halo" context that combines
aura and pool contexts in a single structure. This is a simplification
in hardware so that there is no need to initialize both Aura and Pool
contexts for queues. Separate Aura and Pool contexts are needed say if
we have to point many Auras to a single pool but we always use 1:1 Aura
and Pool map in Octeontx2 netdev driver. Hence for CN20K use Halo
context for netdevs.

The series:

  1) Adds Halo context type, mbox handling, and halo_bmap tracking in AF.
  2) Adds NPA DPC (diagnostic/performance counters) 32 counters with
     per-LF permit registers, mbox alloc/free, and teardown handling.
  3) Adds debugfs for Halo (halo_ctx file and NPA context display/write
     for HALO ctype).
  4) Switches the CN20K PF driver to use the unified Halo context and
     allocates a DPC counter for the NPA LF.

Changes for v6:
 Fixed possibility of stack corruption and double free
 errors as per Sashiko reviews. 
Changes for v5:
 Fixed double free of DPC counter in error path as per AI review
 Modified commit message to state that backpressure
 is not supported currently
Changes for v4:
 Fixed DPC counter leak as per AI review
Changes for v3:
 Fixed all AI reviews
 Removed inline for npa_ctype_invalid(as per Simon)

Changes for v2:
 Fixed all AI reviews
 Removed inline and added const for npa_ctype_str(as per Simon)
 Fixed build warning flagged with W=1


Linu Cherian (3):
  octeontx2-af: npa: cn20k: Add NPA Halo support
  octeontx2-af: npa: cn20k: Add DPC support
  octeontx2-af: npa: cn20k: Add debugfs for Halo

Subbaraya Sundeep (2):
  octeontx2-af: Simplify NPA context writing and reading
  octeontx2-pf: cn20k: Use unified Halo context

 .../ethernet/marvell/octeontx2/af/cn20k/api.h |   3 +
 .../marvell/octeontx2/af/cn20k/debugfs.c      |  60 +++++
 .../marvell/octeontx2/af/cn20k/debugfs.h      |   2 +
 .../ethernet/marvell/octeontx2/af/cn20k/npa.c | 139 ++++++++++++
 .../ethernet/marvell/octeontx2/af/cn20k/reg.h |   7 +
 .../marvell/octeontx2/af/cn20k/struct.h       |  81 +++++++
 .../net/ethernet/marvell/octeontx2/af/mbox.h  |  25 +++
 .../net/ethernet/marvell/octeontx2/af/rvu.h   |   4 +
 .../marvell/octeontx2/af/rvu_debugfs.c        |  71 +++++-
 .../ethernet/marvell/octeontx2/af/rvu_npa.c   |  96 ++++++--
 .../marvell/octeontx2/af/rvu_struct.h         |   7 +
 .../ethernet/marvell/octeontx2/nic/cn20k.c    | 209 +++++++++---------
 .../ethernet/marvell/octeontx2/nic/cn20k.h    |   3 +
 .../marvell/octeontx2/nic/otx2_common.h       |   3 +
 .../ethernet/marvell/octeontx2/nic/otx2_pf.c  |   8 +
 15 files changed, 587 insertions(+), 131 deletions(-)

-- 
2.48.1