|
@@ -6050,6 +6050,19 @@ typedef struct {
|
|
|
*/
|
|
|
#define WMI_OFFLOAD_QUIET_FLAG_INFO_IN_SWBA_START_STOP 0x00000004
|
|
|
|
|
|
+typedef struct {
|
|
|
+ A_UINT32 tlv_header; /* TLV tag and len; tag equals WMITLV_TAG_STRUC_wmi_vdev_bcn_offload_ml_quiet_config_params */
|
|
|
+ A_UINT32 vdev_id; /* partner vdev_id */
|
|
|
+ A_UINT32 hw_link_id; /* hw_link_id: Unique link id across SOCs, got as part of QMI handshake */
|
|
|
+ A_UINT32 beacon_interval; /* beacon interval in TU from received beacon of the partner link */
|
|
|
+ A_UINT32 period; /* period in TUs */
|
|
|
+ A_UINT32 duration; /* duration in TUs */
|
|
|
+ A_UINT32 next_start; /* offset in TUs from beacon */
|
|
|
+ A_UINT32 flags; /* STOP or START (and single vs. repeated) Quiet IE
|
|
|
+ * See WMI_OFFLOAD_QUIET_FLAG_xxx defs.
|
|
|
+ */
|
|
|
+} wmi_vdev_bcn_offload_ml_quiet_config_params;
|
|
|
+
|
|
|
typedef struct {
|
|
|
A_UINT32 tlv_header; /* TLV tag and len; tag equals WMITLV_TAG_STRUC_wmi_vdev_bcn_offload_quiet_config_cmd_fixed_param */
|
|
|
A_UINT32 vdev_id; /* Virtual interface ID */
|
|
@@ -6059,6 +6072,11 @@ typedef struct {
|
|
|
A_UINT32 flags; /* STOP or START (and single vs. repeated) Quiet IE
|
|
|
* See WMI_OFFLOAD_QUIET_FLAG_xxx defs.
|
|
|
*/
|
|
|
+/*
|
|
|
+ * This TLV is optionally followed by array of wmi_vdev_bcn_offload_ml_quiet_config_params struct
|
|
|
+ * wmi_vdev_bcn_offload_ml_quiet_config_params will have multiple instances equal to num of links in an AP MLD
|
|
|
+ * wmi_vdev_bcn_offload_ml_quiet_config_params ml_quiet_param[];
|
|
|
+ */
|
|
|
} wmi_vdev_bcn_offload_quiet_config_cmd_fixed_param;
|
|
|
|
|
|
typedef struct {
|
|
@@ -13037,6 +13055,23 @@ typedef struct {
|
|
|
#define WMI_BEACON_TMPLT_GET_LAST_TEMPLATE(_ema_param) \
|
|
|
WMI_GET_BITS(_ema_param, WMI_BEACON_TMPLT_LAST_TEMPLATE_BITPOS, 8)
|
|
|
|
|
|
+typedef struct {
|
|
|
+ A_UINT32 tlv_header; /* TLV tag and len; tag equals WMITLV_TAG_STRUC_wmi_bcn_tmpl_ml_params */
|
|
|
+ A_UINT32 vdev_id; /* partner vdev_id */
|
|
|
+ A_UINT32 hw_link_id; /* hw_link_id: Unique link id across SOCs, got as part of QMI handshake */
|
|
|
+ A_UINT32 beacon_interval; /* beacon interval in TU from received beacon of the partner link */
|
|
|
+ /** CSA IE switch count offset from the beginning of data[]
|
|
|
+ * Value 0 indicates CSA IE is not present in beacon template.
|
|
|
+ */
|
|
|
+ A_UINT32 csa_switch_count_offset; /* units = bytes */
|
|
|
+ /** Extended CSA IE switch count offset from the beginning of data[]
|
|
|
+ * Value 0 indicates ECSA IE is not present in beacon template.
|
|
|
+ */
|
|
|
+ A_UINT32 ext_csa_switch_count_offset; /* units = bytes */
|
|
|
+ /** TIM IE offset from the beginning of the template. */
|
|
|
+ A_UINT32 tim_ie_offset;
|
|
|
+} wmi_bcn_tmpl_ml_params;
|
|
|
+
|
|
|
typedef struct {
|
|
|
A_UINT32 tlv_header; /** TLV tag and len; tag equals WMITLV_TAG_STRUC_wmi_bcn_tmpl_cmd_fixed_param */
|
|
|
/** unique id identifying the VDEV, generated by the caller */
|
|
@@ -13125,6 +13160,9 @@ typedef struct {
|
|
|
* The TLVs follows:
|
|
|
* wmi_bcn_prb_info bcn_prb_info; <-- beacon probe capabilities and IEs
|
|
|
* A_UINT8 data[]; <-- Variable length data
|
|
|
+ * wmi_bcn_tmpl_ml_params ml_bcn_param[]; <-- per-MLO-link beacon data
|
|
|
+ * wmi_bcn_tmpl_ml_params will have multiple instances equal to
|
|
|
+ * the number of links in an AP MLD
|
|
|
*/
|
|
|
} wmi_bcn_tmpl_cmd_fixed_param;
|
|
|
|