|
|
Log in / Subscribe / Register

wifi: mt76: add USB RX aggregation support

From:  Sean Wang <sean.wang-AT-kernel.org>
To:  Felix Fietkau <nbd-AT-nbd.name>, Lorenzo Bianconi <lorenzo-AT-kernel.org>
Subject:  [PATCH 0/5] wifi: mt76: add USB RX aggregation support
Date:  Sat, 13 Jun 2026 17:46:50 -0500
Message-ID:  <20260613224655.2405686-1-sean.wang@kernel.org>
Cc:  linux-wireless-AT-vger.kernel.org, linux-mediatek-AT-lists.infradead.org, Sean Wang <sean.wang-AT-kernel.org>
Archive-link:  Article

This series adds optional USB RX aggregation support to mt76 and enables
it on mt7927u.

RX aggregation allows multiple RX frames to be received from one USB URB,
reducing USB completion overhead and improving RX efficiency for
high-throughput RX traffic and monitor capture.

The common USB support remains opt-in, so existing USB drivers keep the
current behavior unless they explicitly enable RX aggregation. The same
settings work for both mt7927u and mt7925u, but this series enables the
feature only on mt7927u for now.

This series does the following:

- size RX page-pool pages from the queue buffer size
- support out-of-order RX URB completion
- add optional USB RX aggregation parsing
- add debugfs stats to verify aggregation behavior
- enable USB RX aggregation on mt7927u

The series is based on wireless-next commit:

21352612198c ("b43: add RF power offset for N-PHY r8 + radio 2057 r8")

It also cherry-picks the following patch from patchwork as a dependency:

wifi: mt76: mt76u: use a threaded NAPI for the RX path
Link: https://lore.kernel.org/all/20260609105301.196302-1-phial...

Sean Wang (5):
  wifi: mt76: usb: size RX page-pool pages from queue buffer
  wifi: mt76: usb: support out-of-order RX URB completion
  wifi: mt76: usb: add optional RX aggregation support
  wifi: mt76: usb: add debugfs aggregation stats
  wifi: mt76: mt7927u: enable USB RX aggregation

 drivers/net/wireless/mediatek/mt76/debugfs.c  |  35 +++
 drivers/net/wireless/mediatek/mt76/mac80211.c |   3 +
 drivers/net/wireless/mediatek/mt76/mt76.h     |  38 ++-
 .../net/wireless/mediatek/mt76/mt7925/usb.c   |  18 +-
 .../net/wireless/mediatek/mt76/mt792x_usb.c   |  23 +-
 drivers/net/wireless/mediatek/mt76/usb.c      | 251 ++++++++++++++++--
 6 files changed, 335 insertions(+), 33 deletions(-)

-- 
2.43.0




Copyright © 2026, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds