From: Mohammad Shuab Siddique <[email protected]>
This series adds vector mode support for BCM5760X (Thor2 / V3 packets)
and fixes several AVX2 path issues:
- Implement AVX2 vector RX for V3 packet completions with VLAN TCI reporting
- Fix stale nr_bds values that could cause the producer to lag the consumer
- Fix incorrect advertisement of LRO offload capability
- Fix scalar RX path not checking rxcmp flags before setting the PTP mbuf flag
- Fix missing timestamps for non-PTP traffic when promiscuous timestamping is
on
- Fix Tx ring corruption and burst truncation after an invalid Tx descriptor
- Optimise the AVX2 RX paths (dead code removal, register reduction for V3)
- Fix VLAN strip ol_flag being set per-port instead of per-packet for V3
- Add burst mode info entry for V3 in bnxt_rx_burst_info
- Fix V3 vector mode defaulting to cksum-good instead of cksum-unknown
Most patches carry Fixes: tags. New functionality (V3 vector mode, AVX2
optimisation) is targeted at 26.07.
Note: this series depends on series "net/bnxt: stability fixes".
Chenna Arnoori (1):
net/bnxt: fix RX timestamping for non-PTP packets
Damodharam Ammepalli (1):
net/bnxt: fix advertising RX LRO offload capability
Keegan Freyhof (6):
net/bnxt: vector mode implementation for V3 packets
net/bnxt: stale values in nr_bds are cleared
net/bnxt: optimization of the AVX2 RX paths
net/bnxt: fix for VLAN stripping being set incorrectly
net/bnxt: add vector AVX2 burst mode indicator for v3
net/bnxt: fix v3 vector mode not selecting cksum unknown
Mohammad Shuab Siddique (1):
net/bnxt: scalar rx path disregarded rxcmp flags for setting ptp mbuf
flag
Zoe Cheimets (1):
net/bnxt: fix packet burst truncation after invalid Tx descriptor
.gitignore | 1 +
drivers/net/bnxt/bnxt.h | 1 +
drivers/net/bnxt/bnxt_ethdev.c | 6 +-
drivers/net/bnxt/bnxt_hwrm.c | 7 +-
drivers/net/bnxt/bnxt_rxq.c | 3 +-
drivers/net/bnxt/bnxt_rxr.c | 25 +-
drivers/net/bnxt/bnxt_rxr.h | 14 +-
drivers/net/bnxt/bnxt_rxtx_vec_avx2.c | 444 +++++++++++++++++++++++-
drivers/net/bnxt/bnxt_rxtx_vec_common.h | 37 ++
drivers/net/bnxt/bnxt_stats.c | 3 +
drivers/net/bnxt/bnxt_txr.c | 170 ++++++++-
11 files changed, 677 insertions(+), 34 deletions(-)
--
2.47.3