From 5b23a6f5fba606cb76fe50e2fc73285caf935b32 Mon Sep 17 00:00:00 2001 From: Pradeep Kumar Chitrapu Date: Mon, 1 Feb 2021 11:16:07 -0800 Subject: [PATCH 2/4] ieee80211: Regulatory info field definition for HE 6GHz operation IE Regulatory info subfield is added per specification IEEE P802.11ax/D7.0. Signed-off-by: Pradeep Kumar Chitrapu --- src/ap/ieee802_11_he.c | 9 ++++++++- src/common/ieee802_11_defs.h | 1 + 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/src/ap/ieee802_11_he.c b/src/ap/ieee802_11_he.c index 18436a6b336b..a78ed01a54b6 100644 --- a/src/ap/ieee802_11_he.c +++ b/src/ap/ieee802_11_he.c @@ -226,7 +226,14 @@ u8 * hostapd_eid_he_operation(struct hostapd_data *hapd, u8 *eid) /* 6 GHz Operation Information field */ *pos++ = hapd->iconf->channel; /* Primary Channel */ - /* Control: Channel Width */ + /* Control: + * bits 0-1: Channel Width + * bits 2-2: Duplicate Beacon + * bits 3-5: Regulatory Info + * - 0 (Indoor Access Point) + * - 1 (Standard Power Access Point) + * - Reserved in 5GHz and 2Ghz bands + */ if (seg1) *pos++ = 3; else diff --git a/src/common/ieee802_11_defs.h b/src/common/ieee802_11_defs.h index be37c9323ae2..3c065ab27f51 100644 --- a/src/common/ieee802_11_defs.h +++ b/src/common/ieee802_11_defs.h @@ -2188,6 +2188,7 @@ struct ieee80211_he_6ghz_oper_info { #define HE_6GHZ_OPER_INFO_CTRL_CHAN_WIDTH_MASK (BIT(0) | BIT(1)) #define HE_6GHZ_OPER_INFO_CTRL_DUP_BEACON BIT(2) +#define HE_6GHZ_OPER_INFO_CTRL_REG_INFO_MASK (BIT(3) | BIT(4) | BIT(5)) /* IEEE P802.11ax/D6.0, 9.4.2.261 HE 6 GHz Band Capabilities element */ struct ieee80211_he_6ghz_band_cap { -- 2.17.1