qcacmn: Add WMI support for Spatial Reuse commands and service ready bit
In order to enable/disable the OBSSes whose transmission can be treated as SR opportunity for SRG and Non-SRG based Spatial Reuse, add the required WMI support. Also, add the Host abstractions for the following - WMI_VDEV_PARAM_ENABLE_SRP - WMI_SERVICE_SRG_SRP_SPATIAL_REUSE_SUPPORT CRs-Fixed: 2684157 Change-Id: Ib3e919766436ca4d4e7f9242b642ba309dbf9a47
This commit is contained in:

committed by
nshrivas

parent
e293836285
commit
fecd279894
@@ -3759,6 +3759,64 @@ QDF_STATUS wmi_unified_send_self_srg_bss_color_bitmap_set_cmd(
|
|||||||
QDF_STATUS wmi_unified_send_self_srg_partial_bssid_bitmap_set_cmd(
|
QDF_STATUS wmi_unified_send_self_srg_partial_bssid_bitmap_set_cmd(
|
||||||
wmi_unified_t wmi_handle, uint32_t bitmap_0,
|
wmi_unified_t wmi_handle, uint32_t bitmap_0,
|
||||||
uint32_t bitmap_1, uint8_t pdev_id);
|
uint32_t bitmap_1, uint8_t pdev_id);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* wmi_unified_send_self_srg_obss_color_enable_bitmap_cmd() - Send 64-bit BSS
|
||||||
|
* color enable bitmap to be used by SRG based Spatial Reuse feature to the FW
|
||||||
|
* @wmi_handle: wmi handle
|
||||||
|
* @bitmap_0: lower 32 bits in BSS color enable bitmap
|
||||||
|
* @bitmap_1: upper 32 bits in BSS color enable bitmap
|
||||||
|
* @pdev_id: pdev ID
|
||||||
|
*
|
||||||
|
* Return: QDF_STATUS_SUCCESS on success and QDF_STATUS_E_FAILURE for failure
|
||||||
|
*/
|
||||||
|
QDF_STATUS wmi_unified_send_self_srg_obss_color_enable_bitmap_cmd(
|
||||||
|
wmi_unified_t wmi_handle, uint32_t bitmap_0,
|
||||||
|
uint32_t bitmap_1, uint8_t pdev_id);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* wmi_unified_send_self_srg_obss_bssid_enable_bitmap_cmd() - Send 64-bit OBSS
|
||||||
|
* BSSID enable bitmap to be used by SRG based Spatial Reuse feature to the FW
|
||||||
|
* @wmi_handle: wmi handle
|
||||||
|
* @bitmap_0: lower 32 bits in BSSID enable bitmap
|
||||||
|
* @bitmap_1: upper 32 bits in BSSID enable bitmap
|
||||||
|
* @pdev_id: pdev ID
|
||||||
|
*
|
||||||
|
* Return: QDF_STATUS_SUCCESS on success and QDF_STATUS_E_FAILURE for failure
|
||||||
|
*/
|
||||||
|
QDF_STATUS wmi_unified_send_self_srg_obss_bssid_enable_bitmap_cmd(
|
||||||
|
wmi_unified_t wmi_handle, uint32_t bitmap_0,
|
||||||
|
uint32_t bitmap_1, uint8_t pdev_id);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* wmi_unified_send_self_non_srg_obss_color_enable_bitmap_cmd() - Send 64-bit
|
||||||
|
* BSS color enable bitmap to be used by Non-SRG based Spatial Reuse
|
||||||
|
* feature to the FW
|
||||||
|
* @wmi_handle: wmi handle
|
||||||
|
* @bitmap_0: lower 32 bits in BSS color enable bitmap
|
||||||
|
* @bitmap_1: upper 32 bits in BSS color enable bitmap
|
||||||
|
* @pdev_id: pdev ID
|
||||||
|
*
|
||||||
|
* Return: QDF_STATUS_SUCCESS on success and QDF_STATUS_E_FAILURE for failure
|
||||||
|
*/
|
||||||
|
QDF_STATUS wmi_unified_send_self_non_srg_obss_color_enable_bitmap_cmd(
|
||||||
|
wmi_unified_t wmi_handle, uint32_t bitmap_0,
|
||||||
|
uint32_t bitmap_1, uint8_t pdev_id);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* wmi_unified_send_self_non_srg_obss_bssid_enable_bitmap_cmd() - Send 64-bit
|
||||||
|
* OBSS BSSID enable bitmap to be used by Non-SRG based Spatial Reuse
|
||||||
|
* feature to the FW
|
||||||
|
* @wmi_handle: wmi handle
|
||||||
|
* @bitmap_0: lower 32 bits in BSSID enable bitmap
|
||||||
|
* @bitmap_1: upper 32 bits in BSSID enable bitmap
|
||||||
|
* @pdev_id: pdev ID
|
||||||
|
*
|
||||||
|
* Return: QDF_STATUS_SUCCESS on success and QDF_STATUS_E_FAILURE for failure
|
||||||
|
*/
|
||||||
|
QDF_STATUS wmi_unified_send_self_non_srg_obss_bssid_enable_bitmap_cmd(
|
||||||
|
wmi_unified_t wmi_handle, uint32_t bitmap_0,
|
||||||
|
uint32_t bitmap_1, uint8_t pdev_id);
|
||||||
#endif /* OBSS_PD */
|
#endif /* OBSS_PD */
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@@ -5007,6 +5007,7 @@ typedef enum {
|
|||||||
wmi_vdev_param_enable_disable_roam_reason_vsie,
|
wmi_vdev_param_enable_disable_roam_reason_vsie,
|
||||||
wmi_vdev_param_set_cmd_obss_pd_threshold,
|
wmi_vdev_param_set_cmd_obss_pd_threshold,
|
||||||
wmi_vdev_param_set_cmd_obss_pd_per_ac,
|
wmi_vdev_param_set_cmd_obss_pd_per_ac,
|
||||||
|
wmi_vdev_param_enable_srp,
|
||||||
} wmi_conv_vdev_param_id;
|
} wmi_conv_vdev_param_id;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -5222,6 +5223,7 @@ typedef enum {
|
|||||||
wmi_service_host_scan_stop_vdev_all,
|
wmi_service_host_scan_stop_vdev_all,
|
||||||
wmi_service_ema_ap_support,
|
wmi_service_ema_ap_support,
|
||||||
wmi_support_extend_address,
|
wmi_support_extend_address,
|
||||||
|
wmi_service_srg_srp_spatial_reuse_support,
|
||||||
wmi_services_max,
|
wmi_services_max,
|
||||||
} wmi_conv_service_ids;
|
} wmi_conv_service_ids;
|
||||||
#define WMI_SERVICE_UNAVAILABLE 0xFFFF
|
#define WMI_SERVICE_UNAVAILABLE 0xFFFF
|
||||||
|
@@ -2169,6 +2169,22 @@ QDF_STATUS (*send_self_srg_bss_color_bitmap_set)(
|
|||||||
QDF_STATUS (*send_self_srg_partial_bssid_bitmap_set)(
|
QDF_STATUS (*send_self_srg_partial_bssid_bitmap_set)(
|
||||||
wmi_unified_t wmi_handle, uint32_t bitmap_0,
|
wmi_unified_t wmi_handle, uint32_t bitmap_0,
|
||||||
uint32_t bitmap_1, uint8_t pdev_id);
|
uint32_t bitmap_1, uint8_t pdev_id);
|
||||||
|
|
||||||
|
QDF_STATUS (*send_self_srg_obss_color_enable_bitmap)(
|
||||||
|
wmi_unified_t wmi_handle, uint32_t bitmap_0,
|
||||||
|
uint32_t bitmap_1, uint8_t pdev_id);
|
||||||
|
|
||||||
|
QDF_STATUS (*send_self_srg_obss_bssid_enable_bitmap)(
|
||||||
|
wmi_unified_t wmi_handle, uint32_t bitmap_0,
|
||||||
|
uint32_t bitmap_1, uint8_t pdev_id);
|
||||||
|
|
||||||
|
QDF_STATUS (*send_self_non_srg_obss_color_enable_bitmap)(
|
||||||
|
wmi_unified_t wmi_handle, uint32_t bitmap_0,
|
||||||
|
uint32_t bitmap_1, uint8_t pdev_id);
|
||||||
|
|
||||||
|
QDF_STATUS (*send_self_non_srg_obss_bssid_enable_bitmap)(
|
||||||
|
wmi_unified_t wmi_handle, uint32_t bitmap_0,
|
||||||
|
uint32_t bitmap_1, uint8_t pdev_id);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
QDF_STATUS
|
QDF_STATUS
|
||||||
|
@@ -3036,6 +3036,54 @@ QDF_STATUS wmi_unified_send_self_srg_partial_bssid_bitmap_set_cmd(
|
|||||||
|
|
||||||
return QDF_STATUS_E_FAILURE;
|
return QDF_STATUS_E_FAILURE;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
QDF_STATUS wmi_unified_send_self_srg_obss_color_enable_bitmap_cmd(
|
||||||
|
wmi_unified_t wmi_handle, uint32_t bitmap_0,
|
||||||
|
uint32_t bitmap_1, uint8_t pdev_id)
|
||||||
|
{
|
||||||
|
if (wmi_handle->ops->send_self_srg_obss_color_enable_bitmap)
|
||||||
|
return wmi_handle->ops->
|
||||||
|
send_self_srg_obss_color_enable_bitmap(
|
||||||
|
wmi_handle, bitmap_0, bitmap_1, pdev_id);
|
||||||
|
|
||||||
|
return QDF_STATUS_E_FAILURE;
|
||||||
|
}
|
||||||
|
|
||||||
|
QDF_STATUS wmi_unified_send_self_srg_obss_bssid_enable_bitmap_cmd(
|
||||||
|
wmi_unified_t wmi_handle, uint32_t bitmap_0,
|
||||||
|
uint32_t bitmap_1, uint8_t pdev_id)
|
||||||
|
{
|
||||||
|
if (wmi_handle->ops->send_self_srg_obss_bssid_enable_bitmap)
|
||||||
|
return wmi_handle->ops->
|
||||||
|
send_self_srg_obss_bssid_enable_bitmap(
|
||||||
|
wmi_handle, bitmap_0, bitmap_1, pdev_id);
|
||||||
|
|
||||||
|
return QDF_STATUS_E_FAILURE;
|
||||||
|
}
|
||||||
|
|
||||||
|
QDF_STATUS wmi_unified_send_self_non_srg_obss_color_enable_bitmap_cmd(
|
||||||
|
wmi_unified_t wmi_handle, uint32_t bitmap_0,
|
||||||
|
uint32_t bitmap_1, uint8_t pdev_id)
|
||||||
|
{
|
||||||
|
if (wmi_handle->ops->send_self_non_srg_obss_color_enable_bitmap)
|
||||||
|
return wmi_handle->ops->
|
||||||
|
send_self_non_srg_obss_color_enable_bitmap(
|
||||||
|
wmi_handle, bitmap_0, bitmap_1, pdev_id);
|
||||||
|
|
||||||
|
return QDF_STATUS_E_FAILURE;
|
||||||
|
}
|
||||||
|
|
||||||
|
QDF_STATUS wmi_unified_send_self_non_srg_obss_bssid_enable_bitmap_cmd(
|
||||||
|
wmi_unified_t wmi_handle, uint32_t bitmap_0,
|
||||||
|
uint32_t bitmap_1, uint8_t pdev_id)
|
||||||
|
{
|
||||||
|
if (wmi_handle->ops->send_self_non_srg_obss_bssid_enable_bitmap)
|
||||||
|
return wmi_handle->ops->
|
||||||
|
send_self_non_srg_obss_bssid_enable_bitmap(
|
||||||
|
wmi_handle, bitmap_0, bitmap_1, pdev_id);
|
||||||
|
|
||||||
|
return QDF_STATUS_E_FAILURE;
|
||||||
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
QDF_STATUS wmi_convert_pdev_id_host_to_target(wmi_unified_t wmi_handle,
|
QDF_STATUS wmi_convert_pdev_id_host_to_target(wmi_unified_t wmi_handle,
|
||||||
|
@@ -491,6 +491,7 @@ static const uint32_t vdev_param_tlv[] = {
|
|||||||
WMI_VDEV_PARAM_SET_CMD_OBSS_PD_THRESHOLD,
|
WMI_VDEV_PARAM_SET_CMD_OBSS_PD_THRESHOLD,
|
||||||
[wmi_vdev_param_set_cmd_obss_pd_per_ac] =
|
[wmi_vdev_param_set_cmd_obss_pd_per_ac] =
|
||||||
WMI_VDEV_PARAM_SET_CMD_OBSS_PD_PER_AC,
|
WMI_VDEV_PARAM_SET_CMD_OBSS_PD_PER_AC,
|
||||||
|
[wmi_vdev_param_enable_srp] = WMI_VDEV_PARAM_ENABLE_SRP,
|
||||||
};
|
};
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
@@ -8808,6 +8809,222 @@ send_self_srg_partial_bssid_bitmap_set_cmd_tlv(
|
|||||||
|
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* send_self_srg_obss_color_enable_bitmap_cmd_tlv() - Send 64-bit BSS color
|
||||||
|
* enable bitmap to be used by SRG based Spatial Reuse feature to the FW
|
||||||
|
* @wmi_handle: wmi handle
|
||||||
|
* @bitmap_0: lower 32 bits in BSS color enable bitmap
|
||||||
|
* @bitmap_1: upper 32 bits in BSS color enable bitmap
|
||||||
|
* @pdev_id: pdev ID
|
||||||
|
*
|
||||||
|
* Return: QDF_STATUS_SUCCESS on success and QDF_STATUS_E_FAILURE for failure
|
||||||
|
*/
|
||||||
|
static QDF_STATUS
|
||||||
|
send_self_srg_obss_color_enable_bitmap_cmd_tlv(
|
||||||
|
wmi_unified_t wmi_handle, uint32_t bitmap_0,
|
||||||
|
uint32_t bitmap_1, uint8_t pdev_id)
|
||||||
|
{
|
||||||
|
wmi_buf_t buf;
|
||||||
|
wmi_pdev_srg_obss_color_enable_bitmap_cmd_fixed_param *cmd;
|
||||||
|
QDF_STATUS ret;
|
||||||
|
uint32_t len;
|
||||||
|
|
||||||
|
len = sizeof(*cmd);
|
||||||
|
|
||||||
|
buf = wmi_buf_alloc(wmi_handle, len);
|
||||||
|
if (!buf)
|
||||||
|
return QDF_STATUS_E_FAILURE;
|
||||||
|
|
||||||
|
cmd = (wmi_pdev_srg_obss_color_enable_bitmap_cmd_fixed_param *)
|
||||||
|
wmi_buf_data(buf);
|
||||||
|
|
||||||
|
WMITLV_SET_HDR(
|
||||||
|
&cmd->tlv_header,
|
||||||
|
WMITLV_TAG_STRUC_wmi_pdev_srg_obss_color_enable_bitmap_cmd_fixed_param,
|
||||||
|
WMITLV_GET_STRUCT_TLVLEN
|
||||||
|
(wmi_pdev_srg_obss_color_enable_bitmap_cmd_fixed_param));
|
||||||
|
|
||||||
|
cmd->pdev_id = wmi_handle->ops->convert_pdev_id_host_to_target(
|
||||||
|
wmi_handle, pdev_id);
|
||||||
|
cmd->srg_obss_en_color_bitmap[0] = bitmap_0;
|
||||||
|
cmd->srg_obss_en_color_bitmap[1] = bitmap_1;
|
||||||
|
|
||||||
|
ret = wmi_unified_cmd_send(
|
||||||
|
wmi_handle, buf, len,
|
||||||
|
WMI_PDEV_SET_SRG_OBSS_COLOR_ENABLE_BITMAP_CMDID);
|
||||||
|
|
||||||
|
if (QDF_IS_STATUS_ERROR(ret)) {
|
||||||
|
WMI_LOGE(
|
||||||
|
"WMI_PDEV_SET_SRG_OBSS_COLOR_ENABLE_BITMAP_CMDID send returned Error %d",
|
||||||
|
ret);
|
||||||
|
wmi_buf_free(buf);
|
||||||
|
}
|
||||||
|
|
||||||
|
return ret;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* send_self_srg_obss_bssid_enable_bitmap_cmd_tlv() - Send 64-bit OBSS BSSID
|
||||||
|
* enable bitmap to be used by SRG based Spatial Reuse feature to the FW
|
||||||
|
* @wmi_handle: wmi handle
|
||||||
|
* @bitmap_0: lower 32 bits in BSSID enable bitmap
|
||||||
|
* @bitmap_1: upper 32 bits in BSSID enable bitmap
|
||||||
|
* @pdev_id: pdev ID
|
||||||
|
*
|
||||||
|
* Return: QDF_STATUS_SUCCESS on success and QDF_STATUS_E_FAILURE for failure
|
||||||
|
*/
|
||||||
|
static QDF_STATUS
|
||||||
|
send_self_srg_obss_bssid_enable_bitmap_cmd_tlv(
|
||||||
|
wmi_unified_t wmi_handle, uint32_t bitmap_0,
|
||||||
|
uint32_t bitmap_1, uint8_t pdev_id)
|
||||||
|
{
|
||||||
|
wmi_buf_t buf;
|
||||||
|
wmi_pdev_srg_obss_bssid_enable_bitmap_cmd_fixed_param *cmd;
|
||||||
|
QDF_STATUS ret;
|
||||||
|
uint32_t len;
|
||||||
|
|
||||||
|
len = sizeof(*cmd);
|
||||||
|
|
||||||
|
buf = wmi_buf_alloc(wmi_handle, len);
|
||||||
|
if (!buf)
|
||||||
|
return QDF_STATUS_E_FAILURE;
|
||||||
|
|
||||||
|
cmd = (wmi_pdev_srg_obss_bssid_enable_bitmap_cmd_fixed_param *)
|
||||||
|
wmi_buf_data(buf);
|
||||||
|
|
||||||
|
WMITLV_SET_HDR(
|
||||||
|
&cmd->tlv_header,
|
||||||
|
WMITLV_TAG_STRUC_wmi_pdev_srg_obss_bssid_enable_bitmap_cmd_fixed_param,
|
||||||
|
WMITLV_GET_STRUCT_TLVLEN
|
||||||
|
(wmi_pdev_srg_obss_bssid_enable_bitmap_cmd_fixed_param));
|
||||||
|
|
||||||
|
cmd->pdev_id = wmi_handle->ops->convert_pdev_id_host_to_target(
|
||||||
|
wmi_handle, pdev_id);
|
||||||
|
cmd->srg_obss_en_bssid_bitmap[0] = bitmap_0;
|
||||||
|
cmd->srg_obss_en_bssid_bitmap[1] = bitmap_1;
|
||||||
|
|
||||||
|
ret = wmi_unified_cmd_send(
|
||||||
|
wmi_handle, buf, len,
|
||||||
|
WMI_PDEV_SET_SRG_OBSS_BSSID_ENABLE_BITMAP_CMDID);
|
||||||
|
|
||||||
|
if (QDF_IS_STATUS_ERROR(ret)) {
|
||||||
|
WMI_LOGE(
|
||||||
|
"WMI_PDEV_SET_SRG_OBSS_BSSID_ENABLE_BITMAP_CMDID send returned Error %d",
|
||||||
|
ret);
|
||||||
|
wmi_buf_free(buf);
|
||||||
|
}
|
||||||
|
|
||||||
|
return ret;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* send_self_non_srg_obss_color_enable_bitmap_cmd_tlv() - Send 64-bit BSS color
|
||||||
|
* enable bitmap to be used by Non-SRG based Spatial Reuse feature to the FW
|
||||||
|
* @wmi_handle: wmi handle
|
||||||
|
* @bitmap_0: lower 32 bits in BSS color enable bitmap
|
||||||
|
* @bitmap_1: upper 32 bits in BSS color enable bitmap
|
||||||
|
* @pdev_id: pdev ID
|
||||||
|
*
|
||||||
|
* Return: QDF_STATUS_SUCCESS on success and QDF_STATUS_E_FAILURE for failure
|
||||||
|
*/
|
||||||
|
static QDF_STATUS
|
||||||
|
send_self_non_srg_obss_color_enable_bitmap_cmd_tlv(
|
||||||
|
wmi_unified_t wmi_handle, uint32_t bitmap_0,
|
||||||
|
uint32_t bitmap_1, uint8_t pdev_id)
|
||||||
|
{
|
||||||
|
wmi_buf_t buf;
|
||||||
|
wmi_pdev_non_srg_obss_color_enable_bitmap_cmd_fixed_param *cmd;
|
||||||
|
QDF_STATUS ret;
|
||||||
|
uint32_t len;
|
||||||
|
|
||||||
|
len = sizeof(*cmd);
|
||||||
|
|
||||||
|
buf = wmi_buf_alloc(wmi_handle, len);
|
||||||
|
if (!buf)
|
||||||
|
return QDF_STATUS_E_FAILURE;
|
||||||
|
|
||||||
|
cmd = (wmi_pdev_non_srg_obss_color_enable_bitmap_cmd_fixed_param *)
|
||||||
|
wmi_buf_data(buf);
|
||||||
|
|
||||||
|
WMITLV_SET_HDR(
|
||||||
|
&cmd->tlv_header,
|
||||||
|
WMITLV_TAG_STRUC_wmi_pdev_non_srg_obss_color_enable_bitmap_cmd_fixed_param,
|
||||||
|
WMITLV_GET_STRUCT_TLVLEN
|
||||||
|
(wmi_pdev_non_srg_obss_color_enable_bitmap_cmd_fixed_param));
|
||||||
|
|
||||||
|
cmd->pdev_id = wmi_handle->ops->convert_pdev_id_host_to_target(
|
||||||
|
wmi_handle, pdev_id);
|
||||||
|
cmd->non_srg_obss_en_color_bitmap[0] = bitmap_0;
|
||||||
|
cmd->non_srg_obss_en_color_bitmap[1] = bitmap_1;
|
||||||
|
|
||||||
|
ret = wmi_unified_cmd_send(
|
||||||
|
wmi_handle, buf, len,
|
||||||
|
WMI_PDEV_SET_NON_SRG_OBSS_COLOR_ENABLE_BITMAP_CMDID);
|
||||||
|
|
||||||
|
if (QDF_IS_STATUS_ERROR(ret)) {
|
||||||
|
WMI_LOGE(
|
||||||
|
"WMI_PDEV_SET_NON_SRG_OBSS_COLOR_ENABLE_BITMAP_CMDID send returned Error %d",
|
||||||
|
ret);
|
||||||
|
wmi_buf_free(buf);
|
||||||
|
}
|
||||||
|
|
||||||
|
return ret;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* send_self_non_srg_obss_bssid_enable_bitmap_cmd_tlv() - Send 64-bit OBSS BSSID
|
||||||
|
* enable bitmap to be used by Non-SRG based Spatial Reuse feature to the FW
|
||||||
|
* @wmi_handle: wmi handle
|
||||||
|
* @bitmap_0: lower 32 bits in BSSID enable bitmap
|
||||||
|
* @bitmap_1: upper 32 bits in BSSID enable bitmap
|
||||||
|
* @pdev_id: pdev ID
|
||||||
|
*
|
||||||
|
* Return: QDF_STATUS_SUCCESS on success and QDF_STATUS_E_FAILURE for failure
|
||||||
|
*/
|
||||||
|
static QDF_STATUS
|
||||||
|
send_self_non_srg_obss_bssid_enable_bitmap_cmd_tlv(
|
||||||
|
wmi_unified_t wmi_handle, uint32_t bitmap_0,
|
||||||
|
uint32_t bitmap_1, uint8_t pdev_id)
|
||||||
|
{
|
||||||
|
wmi_buf_t buf;
|
||||||
|
wmi_pdev_non_srg_obss_bssid_enable_bitmap_cmd_fixed_param *cmd;
|
||||||
|
QDF_STATUS ret;
|
||||||
|
uint32_t len;
|
||||||
|
|
||||||
|
len = sizeof(*cmd);
|
||||||
|
|
||||||
|
buf = wmi_buf_alloc(wmi_handle, len);
|
||||||
|
if (!buf)
|
||||||
|
return QDF_STATUS_E_FAILURE;
|
||||||
|
|
||||||
|
cmd = (wmi_pdev_non_srg_obss_bssid_enable_bitmap_cmd_fixed_param *)
|
||||||
|
wmi_buf_data(buf);
|
||||||
|
|
||||||
|
WMITLV_SET_HDR(
|
||||||
|
&cmd->tlv_header,
|
||||||
|
WMITLV_TAG_STRUC_wmi_pdev_non_srg_obss_bssid_enable_bitmap_cmd_fixed_param,
|
||||||
|
WMITLV_GET_STRUCT_TLVLEN
|
||||||
|
(wmi_pdev_non_srg_obss_bssid_enable_bitmap_cmd_fixed_param));
|
||||||
|
|
||||||
|
cmd->pdev_id = wmi_handle->ops->convert_pdev_id_host_to_target(
|
||||||
|
wmi_handle, pdev_id);
|
||||||
|
cmd->non_srg_obss_en_bssid_bitmap[0] = bitmap_0;
|
||||||
|
cmd->non_srg_obss_en_bssid_bitmap[1] = bitmap_1;
|
||||||
|
|
||||||
|
ret = wmi_unified_cmd_send(
|
||||||
|
wmi_handle, buf, len,
|
||||||
|
WMI_PDEV_SET_NON_SRG_OBSS_BSSID_ENABLE_BITMAP_CMDID);
|
||||||
|
|
||||||
|
if (QDF_IS_STATUS_ERROR(ret)) {
|
||||||
|
WMI_LOGE(
|
||||||
|
"WMI_PDEV_SET_NON_SRG_OBSS_BSSID_ENABLE_BITMAP_CMDID send returned Error %d",
|
||||||
|
ret);
|
||||||
|
wmi_buf_free(buf);
|
||||||
|
}
|
||||||
|
|
||||||
|
return ret;
|
||||||
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
static
|
static
|
||||||
@@ -14107,6 +14324,14 @@ struct wmi_ops tlv_ops = {
|
|||||||
send_self_srg_bss_color_bitmap_set_cmd_tlv,
|
send_self_srg_bss_color_bitmap_set_cmd_tlv,
|
||||||
.send_self_srg_partial_bssid_bitmap_set =
|
.send_self_srg_partial_bssid_bitmap_set =
|
||||||
send_self_srg_partial_bssid_bitmap_set_cmd_tlv,
|
send_self_srg_partial_bssid_bitmap_set_cmd_tlv,
|
||||||
|
.send_self_srg_obss_color_enable_bitmap =
|
||||||
|
send_self_srg_obss_color_enable_bitmap_cmd_tlv,
|
||||||
|
.send_self_srg_obss_bssid_enable_bitmap =
|
||||||
|
send_self_srg_obss_bssid_enable_bitmap_cmd_tlv,
|
||||||
|
.send_self_non_srg_obss_color_enable_bitmap =
|
||||||
|
send_self_non_srg_obss_color_enable_bitmap_cmd_tlv,
|
||||||
|
.send_self_non_srg_obss_bssid_enable_bitmap =
|
||||||
|
send_self_non_srg_obss_bssid_enable_bitmap_cmd_tlv,
|
||||||
#endif
|
#endif
|
||||||
.extract_offload_bcn_tx_status_evt = extract_offload_bcn_tx_status_evt,
|
.extract_offload_bcn_tx_status_evt = extract_offload_bcn_tx_status_evt,
|
||||||
.extract_ctl_failsafe_check_ev_param =
|
.extract_ctl_failsafe_check_ev_param =
|
||||||
@@ -14814,6 +15039,8 @@ static void populate_tlv_service(uint32_t *wmi_service)
|
|||||||
WMI_SERVICE_HOST_SCAN_STOP_VDEV_ALL_SUPPORT;
|
WMI_SERVICE_HOST_SCAN_STOP_VDEV_ALL_SUPPORT;
|
||||||
wmi_service[wmi_support_extend_address] =
|
wmi_service[wmi_support_extend_address] =
|
||||||
WMI_SERVICE_SUPPORT_EXTEND_ADDRESS;
|
WMI_SERVICE_SUPPORT_EXTEND_ADDRESS;
|
||||||
|
wmi_service[wmi_service_srg_srp_spatial_reuse_support] =
|
||||||
|
WMI_SERVICE_SRG_SRP_SPATIAL_REUSE_SUPPORT;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
Reference in New Issue
Block a user