ソースを参照

qcacmn: Use FW macro to set BCAST_TWT flag in TWT_enable cmd

Add b_twt_enable variable to enable/disable broadcast TWT in
wmi_twt_enable_param structure and use FW macro in WMI layer
to enable/disable BCAST_TWT in TWT_ENABLE cmd.

Change-Id: I892e922dda14d16019f3f433f885d1eb5b7169fc
CRs-Fixed: 2793360
Shashikala Prabhu 4 年 前
コミット
31f750cb6f
2 ファイル変更12 行追加3 行削除
  1. 6 2
      wmi/inc/wmi_unified_twt_param.h
  2. 6 1
      wmi/src/wmi_unified_twt_tlv.c

+ 6 - 2
wmi/inc/wmi_unified_twt_param.h

@@ -62,7 +62,9 @@
  *                 TWT slots for STAs. (units = milliseconds)
  * @remove_sta_slot_interval: Inrerval between decisions making to remove TWT
  *                 slot of STAs. (units = milliseconds)
- * @flags: Flag to enable or disable capabilities, example bcast twt.
+ * @b_twt_enable: Enable or disable broadcast TWT.
+ * @b_twt_legacy_mbss_enable: Enable or disable legacy MBSSID TWT.
+ * @b_twt_ax_mbss_enable: Enable or disable 11AX MBSSID TWT.
  */
 struct wmi_twt_enable_param {
 	uint32_t pdev_id;
@@ -82,7 +84,9 @@ struct wmi_twt_enable_param {
 	uint32_t mode_check_interval;
 	uint32_t add_sta_slot_interval;
 	uint32_t remove_sta_slot_interval;
-	uint32_t flags;
+	uint32_t b_twt_enable:1,
+		 b_twt_legacy_mbss_enable:1,
+		 b_twt_ax_mbss_enable:1;
 };
 
 /* status code of enabling TWT

+ 6 - 1
wmi/src/wmi_unified_twt_tlv.c

@@ -62,7 +62,12 @@ static QDF_STATUS send_twt_enable_cmd_tlv(wmi_unified_t wmi_handle,
 	cmd->mode_check_interval =          params->mode_check_interval;
 	cmd->add_sta_slot_interval =        params->add_sta_slot_interval;
 	cmd->remove_sta_slot_interval =     params->remove_sta_slot_interval;
-	cmd->flags =                        params->flags;
+
+	TWT_EN_DIS_FLAGS_SET_BTWT(cmd->flags, params->b_twt_enable);
+	TWT_EN_DIS_FLAGS_SET_L_MBSSID(cmd->flags,
+				      params->b_twt_legacy_mbss_enable);
+	TWT_EN_DIS_FLAGS_SET_AX_MBSSID(cmd->flags,
+				       params->b_twt_ax_mbss_enable);
 
 	status = wmi_unified_cmd_send(wmi_handle, buf, sizeof(*cmd),
 			WMI_TWT_ENABLE_CMDID);