Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 3 Jun 2025 23:25:51 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: 71f854e5a01a - main - LinuxKPI: 802.11: update HE structures
Message-ID:  <202506032325.553NPp88043496@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=71f854e5a01a347174d09d594b3d490f806cf850

commit 71f854e5a01a347174d09d594b3d490f806cf850
Author:     Bjoern A. Zeeb <bz@FreeBSD.org>
AuthorDate: 2025-06-02 15:49:20 +0000
Commit:     Bjoern A. Zeeb <bz@FreeBSD.org>
CommitDate: 2025-06-03 23:25:39 +0000

    LinuxKPI: 802.11: update HE structures
    
    Update strutures needed for 11ax (HE) to be correct.  Add references
    to the standard.
    
    Sponsored by:   The FreeBSD Foundation
    MFC after:      3 days
---
 sys/compat/linuxkpi/common/include/net/cfg80211.h | 28 ++++++++++++++---------
 1 file changed, 17 insertions(+), 11 deletions(-)

diff --git a/sys/compat/linuxkpi/common/include/net/cfg80211.h b/sys/compat/linuxkpi/common/include/net/cfg80211.h
index 7849c77062dc..e9af70f751d4 100644
--- a/sys/compat/linuxkpi/common/include/net/cfg80211.h
+++ b/sys/compat/linuxkpi/common/include/net/cfg80211.h
@@ -895,28 +895,34 @@ struct linuxkpi_ieee80211_regdomain {
 
 #define	VENDOR_CMD_RAW_DATA	(void *)(uintptr_t)(-ENOENT)
 
+/*
+ * 802.11ax-2021,
+ * 9.4.2.248.2 HE MAC Capabilities Information field.
+ * 9.4.2.248.3 HE PHY Capabilities Information field.
+ */
 struct ieee80211_he_cap_elem {
 	u8 mac_cap_info[6];
 	u8 phy_cap_info[11];
 } __packed;
 
+/* 802.11ax-2021, 9.4.2.248.4 Supported HE-MCS And NSS Set field. */
 struct ieee80211_he_mcs_nss_supp {
-	/* TODO FIXME */
-	uint32_t	rx_mcs_80;
-	uint32_t	tx_mcs_80;
-	uint32_t	rx_mcs_160;
-	uint32_t	tx_mcs_160;
-	uint32_t	rx_mcs_80p80;
-	uint32_t	tx_mcs_80p80;
+	uint16_t	rx_mcs_80;
+	uint16_t	tx_mcs_80;
+	uint16_t	rx_mcs_160;
+	uint16_t	tx_mcs_160;
+	uint16_t	rx_mcs_80p80;
+	uint16_t	tx_mcs_80p80;
 };
 
-#define	IEEE80211_STA_HE_CAP_PPE_THRES_MAX	32
+#define	IEEE80211_HE_CAP_PPE_THRES_MAX	25
+
+/* net80211::ic_ieee80211_he_cap */
 struct ieee80211_sta_he_cap {
-	/* TODO FIXME */
-	int					has_he;
+	bool					has_he;
 	struct ieee80211_he_cap_elem		he_cap_elem;
 	struct ieee80211_he_mcs_nss_supp	he_mcs_nss_supp;
-	uint8_t					ppe_thres[IEEE80211_STA_HE_CAP_PPE_THRES_MAX];
+	uint8_t					ppe_thres[IEEE80211_HE_CAP_PPE_THRES_MAX];
 };
 
 struct cfg80211_he_bss_color {



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