Decouple RRO logic (v3.0 and v3.1) from WED support in MT7996 driver in order to reuse it when WED module is not available. Introduce WED offload support for MT7992 chipset in MT7996 driver. --- Changes in v3: - Fix compilation warnings - Rebase on top of mt76 main branch - Split patch 4/14 - Link to v2: https://lore.kernel.org/r/20250901-mt7996-rro-rework-v2-0-1f95086b51d1@xxxxxxxxxx Changes in v2: - Fix SER when Wireless Ethernet Dispatcher (WED) is disabled - Rebase on top of mt76 main branch - Link to v1: https://lore.kernel.org/r/20250821-mt7996-rro-rework-v1-0-6c8477ad969f@xxxxxxxxxx --- Lorenzo Bianconi (7): wifi: mt76: Add reset_idx to reset_q mt76_queue_ops signature. wifi: mt76: Remove q->ndesc check in mt76_dma_rx_fill() wifi: mt76: Do not always enable NAPIs for WED RRO queues wifi: mt76: mt7996: Fix tx-queues initialization for second phy on mt7996 wifi: mt76: mt7996: Fix RX packets configuration for primary WED device wifi: mt76: Add rx_queue_init callback wifi: mt76: Add mt76_dma_get_rxdmad_c_buf utility routione Rex Lu (8): wifi: mt76: Differentiate between RRO data and RRO MSDU queues wifi: mt76: mt7996: Initial DMA configuration for MT7992 WED support wifi: mt76: mt7996: Enable HW RRO for MT7992 chipset wifi: mt76: mt7996: Introduce the capability to reset MT7992 WED device wifi: mt76: mt7996: Enable WED for MT7992 chipset wifi: mt76: mt7996: Introduce RRO MSDU callbacks wifi: mt76: mt7996: Decouple RRO logic from WED support wifi: mt76: mt7996: Add SW path for HW-RRO v3.1 drivers/net/wireless/mediatek/mt76/dma.c | 215 +++++++++--- drivers/net/wireless/mediatek/mt76/dma.h | 47 ++- drivers/net/wireless/mediatek/mt76/mt76.h | 54 ++- drivers/net/wireless/mediatek/mt76/mt7915/dma.c | 4 +- drivers/net/wireless/mediatek/mt76/mt792x_dma.c | 6 +- drivers/net/wireless/mediatek/mt76/mt7996/dma.c | 326 ++++++++++++++---- drivers/net/wireless/mediatek/mt76/mt7996/init.c | 310 ++++++++++++----- drivers/net/wireless/mediatek/mt76/mt7996/mac.c | 365 ++++++++++++++++++++- drivers/net/wireless/mediatek/mt76/mt7996/main.c | 19 +- drivers/net/wireless/mediatek/mt76/mt7996/mcu.c | 4 +- drivers/net/wireless/mediatek/mt76/mt7996/mmio.c | 89 +++-- drivers/net/wireless/mediatek/mt76/mt7996/mt7996.h | 91 ++++- drivers/net/wireless/mediatek/mt76/mt7996/pci.c | 3 +- drivers/net/wireless/mediatek/mt76/mt7996/regs.h | 32 +- drivers/net/wireless/mediatek/mt76/wed.c | 8 +- 15 files changed, 1304 insertions(+), 269 deletions(-) --- base-commit: 8680a5406aa6348943da4e739483870a865c343a change-id: 20250821-mt7996-rro-rework-2490cee0f0d8 Best regards, -- Lorenzo Bianconi <lorenzo@xxxxxxxxxx>