This patchset consolidates the ice and iavf vector Tx paths, moving the
code to net/intel/common. The iavf code is used as the basis for the
move, because it has a superset of the features. When the common code is
adopted by the ice driver, it then gains features such as QinQ support
and tunneling support.
Depends-on: series-39162 ("VLAN and QinQ fixes for iavf")
Bruce Richardson (13):
net/iavf: remove unnecessary alignment calls
net/intel: make Tx context flag common
net/iavf: use separate params for VLAN and QinQ position
net/iavf: deduplicate tunnel field fill functions
net/intel: define common macros for tunneling bit-shifts
net/intel: move iavf descriptor writing functions to common
net/intel: use function callback for lldp
net/ice: use common descriptor creation functions
net/intel: move vector Tx paths to common
net/ice: use common AVX Tx functions
net/intel: add common vector Tx fns with context handling
net/intel: improve Tx path selection logic
net/ice: enable context desc offloads for vector Tx
doc/guides/rel_notes/release_26_11.rst | 6 +
drivers/net/intel/common/tx.h | 77 +-
drivers/net/intel/common/tx_vec_x86.h | 783 ++++++++++++++++++
drivers/net/intel/cpfl/cpfl_rxtx.c | 3 +-
drivers/net/intel/i40e/i40e_rxtx.c | 2 +-
drivers/net/intel/iavf/iavf_rxtx.c | 76 +-
drivers/net/intel/iavf/iavf_rxtx.h | 34 -
drivers/net/intel/iavf/iavf_rxtx_vec_avx2.c | 496 +----------
drivers/net/intel/iavf/iavf_rxtx_vec_avx512.c | 495 +----------
drivers/net/intel/iavf/iavf_rxtx_vec_common.h | 76 +-
drivers/net/intel/ice/ice_ethdev.h | 3 +
drivers/net/intel/ice/ice_rxtx.c | 34 +-
drivers/net/intel/ice/ice_rxtx.h | 11 +
drivers/net/intel/ice/ice_rxtx_vec_avx2.c | 159 +---
drivers/net/intel/ice/ice_rxtx_vec_avx512.c | 154 +---
drivers/net/intel/ice/ice_rxtx_vec_common.h | 59 --
drivers/net/intel/idpf/idpf_rxtx.c | 3 +-
17 files changed, 1025 insertions(+), 1446 deletions(-)
create mode 100644 drivers/net/intel/common/tx_vec_x86.h
--
2.53.0