I apologize for very late patch series. Of course, I'd be happy if the series is included in 21.11 since it is a final step to support SN1022 SoC. Now it is really late.
A tiny excuse is that net/sfc part was 90% rewritten to use [1]. Many thanks to Dmitry. Solution with mempool event callback is much better than our previous. The series is carefully tested on all NICs supported by net/sfc. Build is tested on RHEL, CentOS, Fedora, Debian and Ubuntu distros. Build time option is removed in v2 and there is no measurable performance degration now (less than 1%). [1] https://patches.dpdk.org/project/dpdk/patch/20211018224353.3362537-2-dkozl...@nvidia.com/ v2: - avoid recursive lock - avoid build-time option Andrew Rybchenko (1): common/sfc_efx/base: support NIC DMA memory regions API Viacheslav Galaktionov (1): net/sfc: support regioned NIC DMA memory mapping type doc/guides/rel_notes/release_21_11.rst | 1 + drivers/common/sfc_efx/base/ef10_nic.c | 51 +++ drivers/common/sfc_efx/base/efx.h | 46 +++ drivers/common/sfc_efx/base/efx_impl.h | 20 ++ drivers/common/sfc_efx/base/efx_mcdi.c | 204 +++++++++++ drivers/common/sfc_efx/base/efx_mcdi.h | 31 ++ drivers/common/sfc_efx/base/efx_nic.c | 460 ++++++++++++++++++++++++ drivers/common/sfc_efx/base/siena_nic.c | 2 + drivers/common/sfc_efx/version.map | 3 + drivers/net/sfc/meson.build | 1 + drivers/net/sfc/sfc.c | 25 +- drivers/net/sfc/sfc.h | 8 +- drivers/net/sfc/sfc_dp_rx.h | 4 + drivers/net/sfc/sfc_dp_tx.h | 4 + drivers/net/sfc/sfc_ef100_rx.c | 40 ++- drivers/net/sfc/sfc_ef100_tx.c | 111 ++++-- drivers/net/sfc/sfc_ef10_essb_rx.c | 5 + drivers/net/sfc/sfc_ef10_rx.c | 5 + drivers/net/sfc/sfc_ef10_tx.c | 5 + drivers/net/sfc/sfc_ethdev.c | 13 + drivers/net/sfc/sfc_ev.c | 1 + drivers/net/sfc/sfc_mcdi.c | 5 +- drivers/net/sfc/sfc_nic_dma.c | 335 +++++++++++++++++ drivers/net/sfc/sfc_nic_dma.h | 29 ++ drivers/net/sfc/sfc_nic_dma_dp.h | 57 +++ drivers/net/sfc/sfc_port.c | 3 +- drivers/net/sfc/sfc_rx.c | 9 +- drivers/net/sfc/sfc_tx.c | 9 +- 28 files changed, 1431 insertions(+), 56 deletions(-) create mode 100644 drivers/net/sfc/sfc_nic_dma.c create mode 100644 drivers/net/sfc/sfc_nic_dma.h create mode 100644 drivers/net/sfc/sfc_nic_dma_dp.h -- 2.30.2