]> git.ipfire.org Git - thirdparty/hostap.git/commitdiff
Enhance QCA vendor interface to indicate TWT required capability of AP
authorSumit Agre <quic_sagre@quicinc.com>
Tue, 8 Mar 2022 05:05:37 +0000 (10:35 +0530)
committerJouni Malinen <j@w1.fi>
Thu, 10 Mar 2022 17:36:37 +0000 (19:36 +0200)
Add QCA_WLAN_TWT_NOTIFY command type to send event to userspace when AP
changes TWT required bit field in its capabilities.

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

index 816261c7938246c82a54528cafbb72acd5dbe924..22424829eb30868e4f24213263e20b65f512b6a7 100644 (file)
@@ -8680,6 +8680,11 @@ enum qca_wlan_vendor_attr_wifi_test_config {
  * @QCA_WLAN_TWT_SET_PARAM: Configure TWT related parameters. Required
  * parameters are obtained through QCA_WLAN_VENDOR_ATTR_CONFIG_TWT_PARAMS. Refer
  * the enum qca_wlan_vendor_attr_twt_set_param.
+ *
+ * @QCA_WLAN_TWT_NOTIFY: Used to notify userspace about changes in TWT
+ * related information for example TWT required bit in AP capabilities etc.
+ * The reason for the notification is sent using
+ * QCA_WLAN_VENDOR_ATTR_CONFIG_TWT_NOTIFY_STATUS.
  */
 enum qca_wlan_twt_operation {
        QCA_WLAN_TWT_SET = 0,
@@ -8693,6 +8698,7 @@ enum qca_wlan_twt_operation {
        QCA_WLAN_TWT_GET_CAPABILITIES = 8,
        QCA_WLAN_TWT_SETUP_READY_NOTIFY = 9,
        QCA_WLAN_TWT_SET_PARAM = 10,
+       QCA_WLAN_TWT_NOTIFY = 11,
 };
 
 /**
@@ -8709,11 +8715,17 @@ enum qca_wlan_twt_operation {
  * enum qca_wlan_vendor_attr_twt_setup, enum qca_wlan_vendor_attr_twt_resume,
  * enum qca_wlan_vendor_attr_twt_set_param, or
  * enum qca_wlan_vendor_attr_twt_stats based on the operation.
+ *
+ * @QCA_WLAN_VENDOR_ATTR_CONFIG_TWT_NOTIFY_STATUS: Size is u8, mandatory when
+ * QCA_WLAN_VENDOR_ATTR_CONFIG_TWT_OPERATION is set to QCA_WLAN_TWT_NOTIFY.
+ * The values used by this attribute are defined in
+ * enum qca_wlan_vendor_twt_status.
  */
 enum qca_wlan_vendor_attr_config_twt {
        QCA_WLAN_VENDOR_ATTR_CONFIG_TWT_INVALID = 0,
        QCA_WLAN_VENDOR_ATTR_CONFIG_TWT_OPERATION = 1,
        QCA_WLAN_VENDOR_ATTR_CONFIG_TWT_PARAMS = 2,
+       QCA_WLAN_VENDOR_ATTR_CONFIG_TWT_NOTIFY_STATUS = 3,
 
        /* keep last */
        QCA_WLAN_VENDOR_ATTR_CONFIG_TWT_AFTER_LAST,
@@ -9189,6 +9201,10 @@ enum qca_wlan_vendor_attr_twt_setup {
  * QCA_WLAN_VENDOR_TWT_STATUS_POWER_SAVE_EXIT_TERMINATE: The driver requested to
  * terminate an existing TWT session on power save exit request from userspace.
  * Used on the TWT_TERMINATE notification from the driver/firmware.
+ * @QCA_WLAN_VENDOR_TWT_STATUS_TWT_REQUIRED: The peer has set the TWT
+ * required bit in its capabilities.
+ * @QCA_WLAN_VENDOR_TWT_STATUS_TWT_NOT_REQUIRED: The peer has cleared
+ * the TWT required bit(1->0) in its capabilities.
  */
 enum qca_wlan_vendor_twt_status {
        QCA_WLAN_VENDOR_TWT_STATUS_OK = 0,
@@ -9214,6 +9230,8 @@ enum qca_wlan_vendor_twt_status {
        QCA_WLAN_VENDOR_TWT_STATUS_CHANNEL_SWITCH_IN_PROGRESS = 20,
        QCA_WLAN_VENDOR_TWT_STATUS_SCAN_IN_PROGRESS = 21,
        QCA_WLAN_VENDOR_TWT_STATUS_POWER_SAVE_EXIT_TERMINATE = 22,
+       QCA_WLAN_VENDOR_TWT_STATUS_TWT_REQUIRED = 23,
+       QCA_WLAN_VENDOR_TWT_STATUS_TWT_NOT_REQUIRED = 24,
 };
 
 /**