Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 7 Sep 2022 23:55:43 GMT
From:      "Bjoern A. Zeeb" <bz@FreeBSD.org>
To:        src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org
Subject:   git: c994352a8841 - main - net80211: update (parts of) Action field categories
Message-ID:  <202209072355.287Nthds054654@gitrepo.freebsd.org>

next in thread | raw e-mail | index | archive | help
The branch main has been updated by bz:

URL: https://cgit.FreeBSD.org/src/commit/?id=c994352a8841eb4533c587bc524f2d1de659a20a

commit c994352a8841eb4533c587bc524f2d1de659a20a
Author:     Bjoern A. Zeeb <bz@FreeBSD.org>
AuthorDate: 2022-09-07 23:28:13 +0000
Commit:     Bjoern A. Zeeb <bz@FreeBSD.org>
CommitDate: 2022-09-07 23:28:13 +0000

    net80211: update (parts of) Action field categories
    
    Update to the full list of action field category values based on
    802.11-2020 with 11ax extensions and remove one value Reserved nowadays.
    While here annotate them with descriptions.
    
    Also add Spectrum Management and Radio Measurement action field values
    needed in LinuxKPI.
    
    No functional changes.
    
    Sponsored by:   The FreeBSD Foundation
    MFC after:      1 week
---
 sys/net80211/ieee80211.h | 69 +++++++++++++++++++++++++++++++++++++++++-------
 1 file changed, 59 insertions(+), 10 deletions(-)

diff --git a/sys/net80211/ieee80211.h b/sys/net80211/ieee80211.h
index efd07389341a..f4efc90dfb22 100644
--- a/sys/net80211/ieee80211.h
+++ b/sys/net80211/ieee80211.h
@@ -416,16 +416,65 @@ struct ieee80211_action {
 	uint8_t		ia_action;
 } __packed;
 
-#define	IEEE80211_ACTION_CAT_SM		0	/* Spectrum Management */
-#define	IEEE80211_ACTION_CAT_QOS	1	/* QoS */
-#define	IEEE80211_ACTION_CAT_DLS	2	/* DLS */
-#define	IEEE80211_ACTION_CAT_BA		3	/* BA */
-#define	IEEE80211_ACTION_CAT_HT		7	/* HT */
-#define	IEEE80211_ACTION_CAT_MESH	13	/* Mesh */
-#define	IEEE80211_ACTION_CAT_SELF_PROT	15	/* Self-protected */
-/* 16 - 125 reserved */
-#define	IEEE80211_ACTION_CAT_VHT	21
-#define	IEEE80211_ACTION_CAT_VENDOR	127	/* Vendor Specific */
+/* 80211-2020 Table 9-51-Category values */
+#define	IEEE80211_ACTION_CAT_SM			0	/* 9.6.2 Spectrum Management */
+#define	IEEE80211_ACTION_CAT_QOS		1	/* 9.6.3 QoS */
+/* Reserved					2	was IEEE80211_ACTION_CAT_DLS */
+#define	IEEE80211_ACTION_CAT_BA			3	/* 9.6.4 Block Ack */
+#define	IEEE80211_ACTION_CAT_PUBLIC		4	/* 9.6.7 Public */
+#define	IEEE80211_ACTION_CAT_RADIO_MEASUREMENT	5	/* 9.6.6 Radio Measurement */
+#define	IEEE80211_ACTION_CAT_FAST_BBS_TRANSITION 6	/* 9.6.8 Fast BSS Transition */
+#define	IEEE80211_ACTION_CAT_HT			7	/* 9.6.11 HT */
+#define	IEEE80211_ACTION_CAT_SA_QUERY		8	/* 9.6.9 SA Query */
+#define	IEEE80211_ACTION_CAT_PROTECTED_DUAL_OF_PUBLIC_ACTION 9 /* 9.6.10 Protected Dual of Public Action */
+#define	IEEE80211_ACTION_CAT_WNM		10	/* 9.6.13 WNM */
+#define	IEEE80211_ACTION_CAT_UNPROTECTED_WNM	11	/* 9.6.14 Unprotected WNM */
+#define	IEEE80211_ACTION_CAT_TDLS		12	/* 9.6.12 TDLS */
+#define	IEEE80211_ACTION_CAT_MESH		13	/* 9.6.16 Mesh */
+#define	IEEE80211_ACTION_CAT_MULTIHOP		14	/* 9.6.17 Multihop */
+#define	IEEE80211_ACTION_CAT_SELF_PROT		15	/* 9.6.15 Self-protected */
+#define	IEEE80211_ACTION_CAT_DMG		16	/* 9.6.19 DMG */
+/* Reserved					17	(R)Wi-Fi Alliance */
+#define	IEEE80211_ACTION_CAT_FAST_SESSION_TRANSFER 18	/* 9.6.20 Fast Session Transfer */
+#define	IEEE80211_ACTION_CAT_ROBUST_AV_STREAMING 19	/* 9.6.18 Robust AV Streaming */
+#define	IEEE80211_ACTION_CAT_UNPROTECTED_DMG	20	/* 9.6.21 Unprotected DMG */
+#define	IEEE80211_ACTION_CAT_VHT		21	/* 9.6.22 VHT */
+#define	IEEE80211_ACTION_CAT_UNPROTECTED_S1G	22	/* 9.6.24 Unprotected S1G */
+#define	IEEE80211_ACTION_CAT_S1G		23	/* 9.6.25 S1G */
+#define	IEEE80211_ACTION_CAT_FLOW_CONTROL	24	/* 9.6.26 Flow Control */
+#define	IEEE80211_ACTION_CAT_CTL_RESP_MCS_NEG	25	/* 9.6.27 Control Response MCS Negotiation */
+#define	IEEE80211_ACTION_CAT_FILS		26	/* 9.6.23 FILS */
+#define	IEEE80211_ACTION_CAT_CDMG		27	/* 9.6.28 CDMG */
+#define	IEEE80211_ACTION_CAT_CMMG		28	/* 9.6.29 CMMG */
+#define	IEEE80211_ACTION_CAT_GLK		29	/* 9.6.30 GLK */
+#define	IEEE80211_ACTION_CAT_HE			30	/* 9.6.31 HE, 80211ax-2021 */
+#define	IEEE80211_ACTION_CAT_PROTECTED_HE	31	/* 9.6.32 Protected HE, 80211ax-2021 */
+/* Reserved					32-125 */
+#define	IEEE80211_ACTION_CAT_VENDOR_SPECIFIC_PROTECTED 126 /* 9.6.5 Vendor-specific Protected */
+#define	IEEE80211_ACTION_CAT_VENDOR		127	/* 9.6.5 Vendor-specific */
+/* Error					128-255 */
+
+
+/* 80211-2020 Table 9-346-Spectrum Management Action field values */
+enum ieee80211_action_sm {
+	IEEE80211_ACTION_SM_SMREQ		= 0,	/* Spectrum Measurement Request */
+	IEEE80211_ACTION_SM_SMREP		= 1,	/* Spectrum Measurement Report */
+	IEEE80211_ACTION_SM_TPCREQ		= 2,	/* TPC Request */
+	IEEE80211_ACTION_SM_TPCREP		= 3,	/* TPC Report */
+	IEEE80211_ACTION_SM_CSA			= 4,	/* Channel Switch Announcement */
+	/* Reserved				= 5-255 */
+};
+
+/* 80211-2020 Table 9-363-Radio Measurement Action field values */
+enum ieee80211_action_radio_measurement {
+	IEEE80211_ACTION_RADIO_MEASUREMENT_RMREQ	= 0,	/* Radio Measurement Request */
+	IEEE80211_ACTION_RADIO_MEASUREMENT_RMREP	= 1,	/* Radio Measurement Report */
+	IEEE80211_ACTION_RADIO_MEASUREMENT_LMREQ	= 2,	/* Link Measurement Request */
+	IEEE80211_ACTION_RADIO_MEASUREMENT_LMREP	= 3,	/* Link Measurement Report */
+	IEEE80211_ACTION_RADIO_MEASUREMENT_NRREQ	= 4,	/* Neighbor Report Request */
+	IEEE80211_ACTION_RADIO_MEASUREMENT_NRRESP	= 5,	/* Neighbor Report Response */
+	/* Reserved					= 6-255 */
+};
 
 #define	IEEE80211_ACTION_HT_TXCHWIDTH	0	/* recommended xmit chan width*/
 #define	IEEE80211_ACTION_HT_MIMOPWRSAVE	1	/* MIMO power save */



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?202209072355.287Nthds054654>