qcacmn: Add support for peer create response event
Add WMI support to extract data received from fw for WMI_PEER_CREATE_CONF_EVENTID event id. Change-Id: Ifcf4c3e2f21be1433b96079405650a3448e0652e CRs-Fixed: 2797202
This commit is contained in:

committed by
Gerrit - the friendly Code Review server

parent
e24ab81ff3
commit
3d1c4ee4a0
@@ -492,6 +492,21 @@ QDF_STATUS wmi_unified_send_multiple_vdev_restart_req_cmd(
|
||||
wmi_unified_t wmi_handle,
|
||||
struct multiple_vdev_restart_params *param);
|
||||
|
||||
/**
|
||||
* wmi_extract_peer_create_response_event() -
|
||||
* extract vdev id and peer mac address and status from peer create
|
||||
* response event
|
||||
* @wmi_handle: wmi handle
|
||||
* @evt_buf: pointer to event buffer
|
||||
* @param: Pointer to hold evt buf
|
||||
*
|
||||
* Return: QDF_STATUS_SUCCESS for success or error code
|
||||
*/
|
||||
QDF_STATUS wmi_extract_peer_create_response_event(
|
||||
wmi_unified_t wmi_handle,
|
||||
uint8_t *evt_buf,
|
||||
struct wmi_host_peer_create_response_event *param);
|
||||
|
||||
/**
|
||||
* wmi_extract_peer_delete_response_event() -
|
||||
* extract vdev id and peer mac addresse from peer delete response event
|
||||
|
@@ -306,6 +306,19 @@ QDF_STATUS wmi_extract_dcs_im_tgt_stats(wmi_unified_t wmi_handle, void *evt_buf,
|
||||
return QDF_STATUS_E_FAILURE;
|
||||
}
|
||||
|
||||
QDF_STATUS wmi_extract_peer_create_response_event(
|
||||
wmi_unified_t wmi_handle,
|
||||
uint8_t *evt_buf,
|
||||
struct wmi_host_peer_create_response_event *param)
|
||||
{
|
||||
if (wmi_handle->ops->extract_peer_create_response_event)
|
||||
return wmi_handle->ops->extract_peer_create_response_event(
|
||||
wmi_handle,
|
||||
evt_buf, param);
|
||||
|
||||
return QDF_STATUS_E_FAILURE;
|
||||
}
|
||||
|
||||
QDF_STATUS wmi_extract_peer_delete_response_event(
|
||||
wmi_unified_t wmi_handle,
|
||||
uint8_t *evt_buf,
|
||||
|
@@ -1354,6 +1354,38 @@ static QDF_STATUS extract_dcs_im_tgt_stats_tlv(wmi_unified_t wmi_handle,
|
||||
return QDF_STATUS_SUCCESS;
|
||||
}
|
||||
|
||||
/*
|
||||
* extract_peer_create_response_event_tlv() - extract peer create response event
|
||||
* @wmi_handle: wmi handle
|
||||
* @param evt_buf: pointer to event buffer
|
||||
* @param vdev_id: Pointer to hold vdev_id
|
||||
* @param mac_addr: Pointer to hold peer mac address
|
||||
* @param status: Peer create status
|
||||
*
|
||||
* Return: QDF_STATUS_SUCCESS for success or error code
|
||||
*/
|
||||
static QDF_STATUS extract_peer_create_response_event_tlv(wmi_unified_t wmi_hdl,
|
||||
void *evt_buf, struct wmi_host_peer_create_response_event *param)
|
||||
{
|
||||
WMI_PEER_CREATE_CONF_EVENTID_param_tlvs *param_buf;
|
||||
wmi_peer_create_conf_event_fixed_param *ev;
|
||||
|
||||
param_buf = (WMI_PEER_CREATE_CONF_EVENTID_param_tlvs *)evt_buf;
|
||||
|
||||
ev = (wmi_peer_create_conf_event_fixed_param *) param_buf->fixed_param;
|
||||
if (!ev) {
|
||||
WMI_LOGE("%s: Invalid peer_create response", __func__);
|
||||
return QDF_STATUS_E_FAILURE;
|
||||
}
|
||||
|
||||
param->vdev_id = ev->vdev_id;
|
||||
WMI_MAC_ADDR_TO_CHAR_ARRAY(&ev->peer_macaddr,
|
||||
¶m->mac_address.bytes[0]);
|
||||
param->status = ev->status;
|
||||
|
||||
return QDF_STATUS_SUCCESS;
|
||||
}
|
||||
|
||||
/*
|
||||
* extract_peer_delete_response_event_tlv() - extract peer delete response event
|
||||
* @wmi_handle: wmi handle
|
||||
@@ -2589,6 +2621,8 @@ void wmi_ap_attach_tlv(wmi_unified_t wmi_handle)
|
||||
ops->extract_dcs_interference_type = extract_dcs_interference_type_tlv;
|
||||
ops->extract_dcs_cw_int = extract_dcs_cw_int_tlv;
|
||||
ops->extract_dcs_im_tgt_stats = extract_dcs_im_tgt_stats_tlv;
|
||||
ops->extract_peer_create_response_event =
|
||||
extract_peer_create_response_event_tlv;
|
||||
ops->extract_peer_delete_response_event =
|
||||
extract_peer_delete_response_event_tlv;
|
||||
ops->extract_pdev_csa_switch_count_status =
|
||||
|
Reference in New Issue
Block a user