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,
|
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
|
||||||
|
@@ -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,
|
||||||
|
@@ -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,
|
||||||
|
¶m->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 =
|
||||||
|
Reference in New Issue
Block a user