aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBjoern A. Zeeb <bz@FreeBSD.org>2025-02-24 02:24:34 +0000
committerBjoern A. Zeeb <bz@FreeBSD.org>2025-02-24 02:24:34 +0000
commitac2c7271b7c2624d7cf3af6bdaf82b00323edfd3 (patch)
tree63cb094028e4cbd8bb592b8418563376858a70a3
parent90d8e307ff610f20dccffe038353affbad0c374e (diff)
LinuxKPI: 802.11: disable A-MDPU TX for now for LinuxKPI WiFi drivers
Clear IEEE80211_FHT_AMPDU_TX from iv_flags_ht to avoid doing A-MPDU TX. For Intel we need to support two different variations at least, both likely needing net80211 surgery first. The good news is that turning it off in net80211 will make it work for modern iwlwifi/mvm chipsets/fw. Realtek will need some mac80211 functions to be implemented at least. Once we've done all and tested one after the other we can remove this again. Sponsored by: The FreeBSD Foundation MFC after: 3 days
-rw-r--r--sys/compat/linuxkpi/common/src/linux_80211.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/sys/compat/linuxkpi/common/src/linux_80211.c b/sys/compat/linuxkpi/common/src/linux_80211.c
index 6d6d14e06a57..66c1fa29615a 100644
--- a/sys/compat/linuxkpi/common/src/linux_80211.c
+++ b/sys/compat/linuxkpi/common/src/linux_80211.c
@@ -3529,6 +3529,10 @@ lkpi_ic_vap_create(struct ieee80211com *ic, const char name[IFNAMSIZ],
if (!lkpi_hwcrypto && ieee80211_hw_check(hw, AMPDU_AGGREGATION))
vap->iv_flags_ht &= ~IEEE80211_FHT_AMPDU_RX;
#endif
+#if defined(LKPI_80211_HT)
+ /* 20250125-BZ Keep A-MPDU TX cleared until we sorted out AddBA for all drivers. */
+ vap->iv_flags_ht &= ~IEEE80211_FHT_AMPDU_TX;
+#endif
if (hw->max_listen_interval == 0)
hw->max_listen_interval = 7 * (ic->ic_lintval / ic->ic_bintval);