aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAdrian Chadd <adrian@FreeBSD.org>2025-08-27 20:06:55 +0000
committerAdrian Chadd <adrian@FreeBSD.org>2025-09-20 00:46:32 +0000
commita58f307880700fff7646416101c301e4d1784bfb (patch)
tree0977e1f252584aa3242a7fc2e001b334816f8579
parentd9ae618c0816d24bc8127e479db5787c97a23140 (diff)
[iwn] Don't originate NULL data frames in net80211
Don't originate null data frames in net80211; leave that up to the iwn firmware. This should fix a bunch of cases where we're seeing out of sequence 802.11n aggregation data packets because net80211 power management stuff was triggering NULL data frames when we don't need them and messing up the firmware / ring buffer sequence number space. Differential Revision: https://reviews.freebsd.org/D52299 Locally tested: * 6205, STA mode
-rw-r--r--sys/dev/iwn/if_iwn.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/sys/dev/iwn/if_iwn.c b/sys/dev/iwn/if_iwn.c
index 6270de3627e6..a949103f20d4 100644
--- a/sys/dev/iwn/if_iwn.c
+++ b/sys/dev/iwn/if_iwn.c
@@ -586,6 +586,8 @@ iwn_attach(device_t dev)
/* Driver / firmware assigned sequence numbers */
ic->ic_flags_ext |= IEEE80211_FEXT_SEQNO_OFFLOAD;
+ /* Don't originate null data frames in net80211 */
+ ic->ic_flags_ext |= IEEE80211_FEXT_NO_NULLDATA;
/* Read MAC address, channels, etc from EEPROM. */
if ((error = iwn_read_eeprom(sc, ic->ic_macaddr)) != 0) {