]> git.ipfire.org Git - thirdparty/hostap.git/commitdiff
QCA vendor attributes to configure TX and RX NSS
authorSachin Ahuja <sahuja@codeaurora.org>
Mon, 23 Nov 2020 11:27:40 +0000 (16:57 +0530)
committerJouni Malinen <j@w1.fi>
Fri, 27 Nov 2020 17:34:26 +0000 (19:34 +0200)
Define QCA vendor attributes to dynamically configure TX NSS and RX NSS
to be used with QCA_NL80211_VENDOR_SUBCMD_SET_WIFI_CONFIGURATION and
QCA_NL80211_VENDOR_SUBCMD_GET_WIFI_CONFIGURATION commands.

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

index d4c1da7e8f33a204671c0cb179366b3bfe616b9f..96b3b052651f72ce7f206737344e189d4dc81fb3 100644 (file)
@@ -2300,6 +2300,10 @@ enum qca_wlan_vendor_attr_config {
         * frame. The updated NSS value after the connection shall not be
         * greater than the one negotiated during the connection. Any such
         * higher value configuration shall be returned with a failure.
+        * Only symmetric NSS configuration (such as 2X2 or 1X1) can be done
+        * using this attribute. QCA_WLAN_VENDOR_ATTR_CONFIG_TX_NSS and
+        * QCA_WLAN_VENDOR_ATTR_CONFIG_RX_NSS attributes shall be used to
+        * configure the asymmetric NSS configuration (such as 1X2).
         */
        QCA_WLAN_VENDOR_ATTR_CONFIG_NSS = 70,
        /* 8-bit unsigned value to trigger Optimized Power Management:
@@ -2348,6 +2352,46 @@ enum qca_wlan_vendor_attr_config {
         */
        QCA_WLAN_VENDOR_ATTR_CONFIG_ANI_LEVEL = 76,
 
+       /* 8-bit unsigned value. This attribute is used to dynamically configure
+        * the number of spatial streams used for transmitting the data. When
+        * configured in the disconnected state, the configured value will
+        * be considered for the following connection attempt.
+        * If the NSS is updated after the connection, the updated NSS value
+        * is notified to the peer using the Operating Mode Notification/Spatial
+        * Multiplexing Power Save frame.
+        * The TX NSS value configured after the connection shall not be greater
+        * than the value negotiated during the connection. Any such higher
+        * value configuration shall be treated as invalid configuration by
+        * the driver. This attribute shall be configured along with
+        * QCA_WLAN_VENDOR_ATTR_CONFIG_RX_NSS attribute to define the symmetric
+        * configuration (such as 2X2 or 1X1) or the asymmetric
+        * configuration (such as 1X2).
+        * If QCA_WLAN_VENDOR_ATTR_CONFIG_NSS attribute is also provided along
+        * with this QCA_WLAN_VENDOR_ATTR_CONFIG_TX_NSS attribute the driver
+        * will update the TX NSS based on QCA_WLAN_VENDOR_ATTR_CONFIG_TX_NSS.
+        */
+       QCA_WLAN_VENDOR_ATTR_CONFIG_TX_NSS = 77,
+
+       /* 8-bit unsigned value. This attribute is used to dynamically configure
+        * the number of spatial streams used for receiving the data. When
+        * configured in the disconnected state, the configured value will
+        * be considered for the following connection attempt.
+        * If the NSS is updated after the connection, the updated NSS value
+        * is notified to the peer using the Operating Mode Notification/Spatial
+        * Multiplexing Power Save frame.
+        * The RX NSS value configured after the connection shall not be greater
+        * than the value negotiated during the connection. Any such higher
+        * value configuration shall be treated as invalid configuration by
+        * the driver. This attribute shall be configured along with
+        * QCA_WLAN_VENDOR_ATTR_CONFIG_TX_NSS attribute to define the symmetric
+        * configuration (such as 2X2 or 1X1) or the asymmetric
+        * configuration (such as 1X2).
+        * If QCA_WLAN_VENDOR_ATTR_CONFIG_NSS attribute is also provided along
+        * with this QCA_WLAN_VENDOR_ATTR_CONFIG_RX_NSS attribute the driver
+        * will update the RX NSS based on QCA_WLAN_VENDOR_ATTR_CONFIG_RX_NSS.
+        */
+       QCA_WLAN_VENDOR_ATTR_CONFIG_RX_NSS = 78,
+
        /* keep last */
        QCA_WLAN_VENDOR_ATTR_CONFIG_AFTER_LAST,
        QCA_WLAN_VENDOR_ATTR_CONFIG_MAX =