]> git.ipfire.org Git - thirdparty/hostap.git/commitdiff
Vendor flags for 11ax channel property flags for use with external ACS
authorKrishna Rao <kcrao@qti.qualcomm.com>
Sat, 23 Sep 2017 13:03:23 +0000 (18:33 +0530)
committerJouni Malinen <j@w1.fi>
Tue, 26 Sep 2017 15:00:47 +0000 (18:00 +0300)
Add 802.11ax channel property flags for use with external ACS (QCA
vendor command). Use the remaining available bits in
qca_wlan_vendor_channel_prop_flags for the first few 11ax flags. Then
add qca_wlan_vendor_channel_prop_flags_2 as a continuation of
qca_wlan_vendor_channel_prop_flags and add the remaining 11ax flags
there. Note that qca_wlan_vendor_channel_prop_flags_ext is not used
since it is currently not intended for holding such information. Rather
it is meant for holding additional control information related to
features such as DFS, CSA, etc.

Signed-off-by: Jouni Malinen <jouni@qca.qualcomm.com>
src/common/qca-vendor.h

index c2dea81ef7ac65d21ef377f6402e434f567055e5..6fe2890b42f239c4076556e41542167f15ee2f57 100644 (file)
@@ -3413,6 +3413,30 @@ enum qca_wlan_vendor_channel_prop_flags {
        QCA_WLAN_VENDOR_CHANNEL_PROP_FLAG_VHT160        = 1 << 26,
        /* VHT 80+80 channel */
        QCA_WLAN_VENDOR_CHANNEL_PROP_FLAG_VHT80_80      = 1 << 27,
+       /* HE 20 channel */
+       QCA_WLAN_VENDOR_CHANNEL_PROP_FLAG_HE20          = 1 << 28,
+       /* HE 40 with extension channel above */
+       QCA_WLAN_VENDOR_CHANNEL_PROP_FLAG_HE40PLUS      = 1 << 29,
+       /* HE 40 with extension channel below */
+       QCA_WLAN_VENDOR_CHANNEL_PROP_FLAG_HE40MINUS     = 1 << 30,
+       /* HE 40 intolerant */
+       QCA_WLAN_VENDOR_CHANNEL_PROP_FLAG_HE40INTOL     = 1 << 31,
+};
+
+/**
+ * qca_wlan_vendor_channel_prop_flags_2: This represents the flags for a
+ * channel, and is a continuation of qca_wlan_vendor_channel_prop_flags. This is
+ * used by QCA_WLAN_VENDOR_EXTERNAL_ACS_EVENT_CHAN_INFO_ATTR_FLAGS_2.
+ */
+enum qca_wlan_vendor_channel_prop_flags_2 {
+       /* HE 40 intolerant mark bit for ACS use */
+       QCA_WLAN_VENDOR_CHANNEL_PROP_FLAG_HE40INTOLMARK = 1 << 0,
+       /* HE 80 channel */
+       QCA_WLAN_VENDOR_CHANNEL_PROP_FLAG_HE80          = 1 << 1,
+       /* HE 160 channel */
+       QCA_WLAN_VENDOR_CHANNEL_PROP_FLAG_HE160         = 1 << 2,
+       /* HE 80+80 channel */
+       QCA_WLAN_VENDOR_CHANNEL_PROP_FLAG_HE80_80       = 1 << 3,
 };
 
 /**
@@ -3476,6 +3500,10 @@ enum qca_wlan_vendor_external_acs_event_chan_info_attr {
        QCA_WLAN_VENDOR_EXTERNAL_ACS_EVENT_CHAN_INFO_ATTR_VHT_SEG_0 = 9,
        /* VHT segment 1 (u8) */
        QCA_WLAN_VENDOR_EXTERNAL_ACS_EVENT_CHAN_INFO_ATTR_VHT_SEG_1 = 10,
+       /* A bitmask (u32) with flags specified in
+        * enum qca_wlan_vendor_channel_prop_flags_2.
+        */
+       QCA_WLAN_VENDOR_EXTERNAL_ACS_EVENT_CHAN_INFO_ATTR_FLAGS_2 = 11,
 
        /* keep last */
        QCA_WLAN_VENDOR_EXTERNAL_ACS_EVENT_CHAN_INFO_ATTR_LAST,