Enhance mlx5 with a data path that bypasses Verbs. The first half of this patchset removes support for functionality completely rewritten in the second half (scatter/gather, inline send), while the data path is refactored without Verbs.
The PMD remains usable during the transition. This patchset must be applied after "Miscellaneous fixes for mlx4 and mlx5". Changes in v2: - Rebased patchset on top of dpdk/master. - Fixed CQE size on Power8. - Fixed mbuf assertion failure in debug mode. - Fixed missing class_id field in rte_pci_id by using RTE_PCI_DEVICE. Adrien Mazarguil (8): mlx5: replace countdown with threshold for Tx completions mlx5: add debugging information about Tx queues capabilities mlx5: check remaining space while processing Tx burst mlx5: resurrect Tx gather support mlx5: work around spurious compilation errors mlx5: remove redundant Rx queue initialization code mlx5: make Rx queue reinitialization safer mlx5: resurrect Rx scatter support Nelio Laranjeiro (16): drivers: fix PCI class id support mlx5: split memory registration function mlx5: remove Tx gather support mlx5: remove Rx scatter support mlx5: remove configuration variable mlx5: remove inline Tx support mlx5: split Tx queue structure mlx5: split Rx queue structure mlx5: update prerequisites for upcoming enhancements mlx5: add definitions for data path without Verbs mlx5: add support for configuration through kvargs mlx5: add Tx/Rx burst function selection wrapper mlx5: refactor Rx data path mlx5: refactor Tx data path mlx5: handle Rx CQE compression mlx5: add support for multi-packet send Yaacov Hazan (1): mlx5: add support for inline send config/common_base | 2 - doc/guides/nics/mlx5.rst | 94 +- drivers/crypto/qat/rte_qat_cryptodev.c | 5 +- drivers/net/mlx4/mlx4.c | 18 +- drivers/net/mlx5/Makefile | 49 +- drivers/net/mlx5/mlx5.c | 182 ++- drivers/net/mlx5/mlx5.h | 10 + drivers/net/mlx5/mlx5_defs.h | 26 +- drivers/net/mlx5/mlx5_ethdev.c | 188 ++- drivers/net/mlx5/mlx5_fdir.c | 20 +- drivers/net/mlx5/mlx5_mr.c | 280 ++++ drivers/net/mlx5/mlx5_prm.h | 163 +++ drivers/net/mlx5/mlx5_rxmode.c | 8 - drivers/net/mlx5/mlx5_rxq.c | 762 ++++------- drivers/net/mlx5/mlx5_rxtx.c | 2212 +++++++++++++++++++------------- drivers/net/mlx5/mlx5_rxtx.h | 176 ++- drivers/net/mlx5/mlx5_txq.c | 368 +++--- drivers/net/mlx5/mlx5_vlan.c | 6 +- drivers/net/nfp/nfp_net.c | 12 +- 19 files changed, 2624 insertions(+), 1957 deletions(-) create mode 100644 drivers/net/mlx5/mlx5_mr.c create mode 100644 drivers/net/mlx5/mlx5_prm.h -- 2.1.4