[PATCH 1/9] 6G: Define 6 GHz band Capability elements

Rajkumar Manoharan <[email protected]>
Newsgroups gmane.linux.drivers.hostap
Message-ID <[email protected]>
This patch defines IEEE P802.11ax/D6.0, 9.4.2.261 HE 6 GHz Band
Capabilities element and 6 GHz Operation Information field of HE
operation element (IEEE P802.11ax/D6.0, Figure 9-787k).

Signed-off-by: Rajkumar Manoharan <[email protected]>
---
 src/common/ieee802_11_defs.h | 34 ++++++++++++++++++++++++++++++++++
 1 file changed, 34 insertions(+)

diff --git a/src/common/ieee802_11_defs.h b/src/common/ieee802_11_defs.h
index 7f31e09a10c5..2fbefb3375c4 100644
--- a/src/common/ieee802_11_defs.h
+++ b/src/common/ieee802_11_defs.h
@@ -473,6 +473,7 @@
 #define WLAN_EID_EXT_SPATIAL_REUSE 39
 #define WLAN_EID_EXT_OCV_OCI 54
 #define WLAN_EID_EXT_SHORT_SSID_LIST 58
+#define WLAN_EID_EXT_HE_6GHZ_BAND_CAP 59
 #define WLAN_EID_EXT_EDMG_CAPABILITIES 61
 #define WLAN_EID_EXT_EDMG_OPERATION 62
 #define WLAN_EID_EXT_REJECTED_GROUPS 92
@@ -2151,6 +2152,39 @@ struct ieee80211_he_operation {
 	/* Followed by conditional MaxBSSID Indicator subfield (u8) */
 } STRUCT_PACKED;
 
+/* IEEE P802.11ax/D6.0, Figure 9-787k—6 GHz Operation Information field */
+struct ieee80211_he_6ghz_oper_info {
+	u8 primary_chan;
+	u8 control;
+	u8 chan_center_freq_seg0;
+	u8 chan_center_freq_seg1;
+	u8 min_rate;
+} STRUCT_PACKED;
+
+#define HE_6GHZ_OPER_INFO_CTRL_CHAN_WIDTH_MASK	0x3
+
+/*
+ * IEEE P802.11ax/D6.0, 9.4.2.261 HE 6 GHz Band Capabilities element
+ */
+struct ieee80211_he_6ghz_band_cap {
+	u8 a_mpdu_params; /* Minimum MPDU Start Spacing B0..B2
+			   * Maximum A-MPDU Length Exponent B3..B5
+			   * Maximum MPDU Length B6..B7
+			   */
+	u8 info;
+} STRUCT_PACKED;
+
+#define HE_6GHZ_BAND_CAP_MIN_MPDU_START_SPACE_MASK	  ((u8) 0x7)
+#define HE_6GHZ_BAND_CAP_MAX_A_MPDU_LENGTH_EXPONENT_MASK  ((u8) 0x7)
+#define HE_6GHZ_BAND_CAP_MAX_A_MPDU_LENGTH_EXPONENT_SHIFT 3
+#define HE_6GHZ_BAND_CAP_MAX_MPDU_LENGTH_MASK		  ((u8) 0x3)
+#define HE_6GHZ_BAND_CAP_MAX_MPDU_LENGTH_SHIFT		  6
+
+#define HE_6GHZ_BAND_CAP_SMPS_DISABLED			  ((u8) (BIT(1) | \
+								 BIT(2)))
+#define HE_6GHZ_BAND_CAP_RX_ANTENNA_PATTERN		  ((u8) BIT(4))
+#define HE_6GHZ_BAND_CAP_TX_ANTENNA_PATTERN		  ((u8) BIT(5))
+
 /*
  * IEEE P802.11ax/D4.0, 9.4.2.246 Spatial Reuse Parameter Set element
  */
-- 
2.7.4

_______________________________________________
Hostap mailing list
[email protected]
http://lists.infradead.org/mailman/listinfo/hostap
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.