[PATCH 0/2] cnxk: Add HALO support for CN20K mempool

Nawal Kishor nkishor at marvell.com
Thu Dec 4 07:51:31 CET 2025


This patch series introduces HALO support for the CN20K platform.
On earlier platforms (CN9K/CN10K), the NPA mempool required separate
aura and pool contexts even for a 1:1 aura-to-pool mapping. This led to
unnecessary context usage for the most common use case.

With CN20K, HALOs allow replacing this 1:1 aura/pool model with a single
combined context, reducing context consumption and simplifying mempool
management.

Patch 1 adds HALO creation support in the ROC common layer.
Patch 2 integrates HALO usage into the CN20K mempool driver and adds a
new "halo_ena" devarg to enable or disable this feature.

Nawal Kishor (2):
common/cnxk: add support for halos
mempool/cnxk: add halo support in mempool

 drivers/common/cnxk/hw/npa.h                  |  81 ++++++
 drivers/common/cnxk/roc_idev.c                |  25 ++
 drivers/common/cnxk/roc_idev.h                |   3 +
 drivers/common/cnxk/roc_idev_priv.h           |   1 +
 drivers/common/cnxk/roc_mbox.h                |   6 +
 drivers/common/cnxk/roc_nix.h                 |   1 +
 drivers/common/cnxk/roc_nix_queue.c           |  46 ++-
 drivers/common/cnxk/roc_npa.c                 | 268 ++++++++++++++++--
 drivers/common/cnxk/roc_npa.h                 |  20 +-
 drivers/common/cnxk/roc_npa_debug.c           | 201 ++++++++++++-
 drivers/common/cnxk/roc_npa_priv.h            |   3 +
 .../common/cnxk/roc_platform_base_symbols.c   |   2 +
 drivers/common/cnxk/roc_sso.c                 |  35 ++-
 drivers/common/cnxk/roc_sso.h                 |   1 +
 drivers/mempool/cnxk/cn10k_mempool_ops.c      |  19 +-
 drivers/mempool/cnxk/cn20k_mempool_ops.c      |  60 ++++
 drivers/mempool/cnxk/cn9k_mempool_ops.c       |   2 +-
 drivers/mempool/cnxk/cnxk_mempool.c           |  40 ++-
 drivers/mempool/cnxk/cnxk_mempool.h           |  16 +-
 drivers/mempool/cnxk/cnxk_mempool_ops.c       |  11 +-
 drivers/mempool/cnxk/meson.build              |   1 +
 21 files changed, 750 insertions(+), 92 deletions(-)
 create mode 100644 drivers/mempool/cnxk/cn20k_mempool_ops.c

-- 
2.48.1



More information about the dev mailing list