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:
Naga
2020-10-14 15:46:44 +05:30
committed by Gerrit - the friendly Code Review server
parent e24ab81ff3
commit 3d1c4ee4a0
3 changed files with 62 additions and 0 deletions

View File

@@ -492,6 +492,21 @@ QDF_STATUS wmi_unified_send_multiple_vdev_restart_req_cmd(
wmi_unified_t wmi_handle, wmi_unified_t wmi_handle,
struct multiple_vdev_restart_params *param); 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() - * wmi_extract_peer_delete_response_event() -
* extract vdev id and peer mac addresse from peer delete response event * extract vdev id and peer mac addresse from peer delete response event

View File

@@ -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; 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( QDF_STATUS wmi_extract_peer_delete_response_event(
wmi_unified_t wmi_handle, wmi_unified_t wmi_handle,
uint8_t *evt_buf, uint8_t *evt_buf,

View File

@@ -1354,6 +1354,38 @@ static QDF_STATUS extract_dcs_im_tgt_stats_tlv(wmi_unified_t wmi_handle,
return QDF_STATUS_SUCCESS; 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,
&param->mac_address.bytes[0]);
param->status = ev->status;
return QDF_STATUS_SUCCESS;
}
/* /*
* extract_peer_delete_response_event_tlv() - extract peer delete response event * extract_peer_delete_response_event_tlv() - extract peer delete response event
* @wmi_handle: wmi handle * @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_interference_type = extract_dcs_interference_type_tlv;
ops->extract_dcs_cw_int = extract_dcs_cw_int_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_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 = ops->extract_peer_delete_response_event =
extract_peer_delete_response_event_tlv; extract_peer_delete_response_event_tlv;
ops->extract_pdev_csa_switch_count_status = ops->extract_pdev_csa_switch_count_status =