Merge "qca-wifi: Support multivdev restart response handling for TLV"

Dieser Commit ist enthalten in:
Linux Build Service Account
2020-01-18 04:11:38 -08:00
committet von Gerrit - the friendly Code Review server
Commit 325630ccc7

Datei anzeigen

@@ -2488,6 +2488,48 @@ send_peer_chan_width_switch_cmd_tlv(wmi_unified_t wmi_handle,
return QDF_STATUS_SUCCESS;
}
static QDF_STATUS extract_multi_vdev_restart_resp_event_tlv(
wmi_unified_t wmi_hdl, void *evt_buf,
struct multi_vdev_restart_resp *param)
{
WMI_PDEV_MULTIPLE_VDEV_RESTART_RESP_EVENTID_param_tlvs *param_buf;
wmi_pdev_multiple_vdev_restart_resp_event_fixed_param *ev;
param_buf =
(WMI_PDEV_MULTIPLE_VDEV_RESTART_RESP_EVENTID_param_tlvs *)evt_buf;
if (!param_buf) {
WMI_LOGE("Invalid buf multi_vdev restart response");
return QDF_STATUS_E_INVAL;
}
ev = (wmi_pdev_multiple_vdev_restart_resp_event_fixed_param *)
param_buf->fixed_param;
if (!ev) {
WMI_LOGE("Invalid ev multi_vdev restart response");
return QDF_STATUS_E_INVAL;
}
param->pdev_id = ev->pdev_id;
param->status = ev->status;
if (!param_buf->num_vdev_ids_bitmap)
return QDF_STATUS_E_FAILURE;
if (param_buf->num_vdev_ids_bitmap > sizeof(param->vdev_id_bmap)) {
WMI_LOGE("vdevId bitmap overflow size:%d",
param_buf->num_vdev_ids_bitmap);
return QDF_STATUS_E_FAILURE;
}
qdf_mem_copy(param->vdev_id_bmap, param_buf->vdev_ids_bitmap,
param_buf->num_vdev_ids_bitmap);
WMI_LOGD("vdev_id_bmap :0x%x%x", param->vdev_id_bmap[1],
param->vdev_id_bmap[0]);
return QDF_STATUS_SUCCESS;
}
void wmi_ap_attach_tlv(wmi_unified_t wmi_handle)
{
struct wmi_ops *ops = wmi_handle->ops;
@@ -2557,4 +2599,6 @@ void wmi_ap_attach_tlv(wmi_unified_t wmi_handle)
set_rx_pkt_type_routing_tag_update_tlv;
#endif /* WLAN_SUPPORT_RX_PROTOCOL_TYPE_TAG */
ops->send_peer_vlan_config_cmd = send_peer_vlan_config_cmd_tlv;
ops->extract_multi_vdev_restart_resp_event =
extract_multi_vdev_restart_resp_event_tlv;
}