git: 37ea95328ca6 - main - net80211: document where to find the HT TX width action frame.
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Sat, 03 May 2025 15:39:12 UTC
The branch main has been updated by adrian:
URL: https://cgit.FreeBSD.org/src/commit/?id=37ea95328ca65ffc7368e4d842c28cbd87777b7a
commit 37ea95328ca65ffc7368e4d842c28cbd87777b7a
Author: Adrian Chadd <adrian@FreeBSD.org>
AuthorDate: 2025-05-01 04:08:40 +0000
Commit: Adrian Chadd <adrian@FreeBSD.org>
CommitDate: 2025-05-03 15:38:04 +0000
net80211: document where to find the HT TX width action frame.
This came up when understanding the what ni_chw was doing.
Differential Revision: https://reviews.freebsd.org/D50095
Reviewed by: bz
---
sys/net80211/ieee80211_ht.c | 10 ++++++++++
1 file changed, 10 insertions(+)
diff --git a/sys/net80211/ieee80211_ht.c b/sys/net80211/ieee80211_ht.c
index 08912dc8fca2..d4e84ce92531 100644
--- a/sys/net80211/ieee80211_ht.c
+++ b/sys/net80211/ieee80211_ht.c
@@ -2592,6 +2592,11 @@ ht_recv_action_ba_delba(struct ieee80211_node *ni,
return 0;
}
+/*
+ * Handle the HT channel width action frame.
+ *
+ * 802.11-2020 9.6.11.2 (Notify Channel Width frame format).
+ */
static int
ht_recv_action_ht_txchwidth(struct ieee80211_node *ni,
const struct ieee80211_frame *wh __unused,
@@ -2603,6 +2608,11 @@ ht_recv_action_ht_txchwidth(struct ieee80211_node *ni,
if ((ni->ni_htcap & IEEE80211_HTCAP_CHWIDTH40) == 0)
return (0);
+ /*
+ * The supported values are either 0 (any supported width)
+ * or 1 (HT20). 80, 160, etc MHz widths are not represented
+ * here.
+ */
chw = (frm[2] == IEEE80211_A_HT_TXCHWIDTH_2040) ?
IEEE80211_STA_RX_BW_40 : IEEE80211_STA_RX_BW_20;