qcacmn: Extract band info from wmi_roam_neighbor_report_info

In API extract_roam_11kv_stats_tlv(), band info value is
fetched from wmi_roam_scan_info. This results in failure
during active mode when single tlv is sent for each event
as wmi_roam_scan_info tlv is not populated for event
expect for roam specific events.

Extract band info from wmi_roam_neighbor_report_info
tlv for neighbor report and BTM events in order
to overcome the above mentioned issue.

Change-Id: Ie53ec36ea1b788219b33f0956b489d5bbe0bb9b0
CRs-Fixed: 3631719
This commit is contained in:
Vijay Raj
2023-10-04 02:06:57 -07:00
parent d6ee46a496
commit da8873f2bd
4 changed files with 8 additions and 10 deletions

View File

@@ -910,15 +910,13 @@ wmi_unified_extract_roam_result_stats(wmi_unified_t wmi, void *evt_buf,
* @dst: Pointer to destination structure to fill data
* @idx: TLV id
* @rpt_idx: index of the current channel
* @band: Band of the link on which packet was transmitted/received.
*
* Return: QDF_STATUS
*/
QDF_STATUS
wmi_unified_extract_roam_11kv_stats(wmi_unified_t wmi, void *evt_buf,
struct wmi_neighbor_report_data *dst,
uint8_t idx, uint8_t rpt_idx,
uint8_t band);
uint8_t idx, uint8_t rpt_idx);
/**
* wmi_unified_vdev_create_send() - send VDEV create command to fw

View File

@@ -2573,7 +2573,7 @@ QDF_STATUS
(*extract_roam_11kv_stats)(wmi_unified_t wmi_handle,
void *evt_buf,
struct wmi_neighbor_report_data *dst,
uint8_t idx, uint8_t rpt_idx, uint8_t band);
uint8_t idx, uint8_t rpt_idx);
void (*wmi_pdev_id_conversion_enable)(wmi_unified_t wmi_handle,
uint32_t *pdev_map,

View File

@@ -3712,11 +3712,11 @@ wmi_unified_extract_roam_result_stats(wmi_unified_t wmi, void *buf,
QDF_STATUS
wmi_unified_extract_roam_11kv_stats(wmi_unified_t wmi, void *evt_buf,
struct wmi_neighbor_report_data *dst,
uint8_t idx, uint8_t rpt_idx, uint8_t band)
uint8_t idx, uint8_t rpt_idx)
{
if (wmi->ops->extract_roam_11kv_stats)
return wmi->ops->extract_roam_11kv_stats(wmi, evt_buf, dst, idx,
rpt_idx, band);
rpt_idx);
return QDF_STATUS_E_FAILURE;
}

View File

@@ -20024,12 +20024,11 @@ extract_roam_result_stats_tlv(wmi_unified_t wmi_handle, void *evt_buf,
* @dst: Pointer to destination structure to fill data
* @idx: TLV id
* @rpt_idx: Neighbor report Channel index
* @band: Band of the link on which packet is transmitted or received
*/
static QDF_STATUS
extract_roam_11kv_stats_tlv(wmi_unified_t wmi_handle, void *evt_buf,
struct wmi_neighbor_report_data *dst,
uint8_t idx, uint8_t rpt_idx, uint8_t band)
uint8_t idx, uint8_t rpt_idx)
{
WMI_ROAM_STATS_EVENTID_param_tlvs *param_buf;
wmi_roam_neighbor_report_info *src_data = NULL;
@@ -20060,7 +20059,8 @@ extract_roam_11kv_stats_tlv(wmi_unified_t wmi_handle, void *evt_buf,
dst->num_rpt =
WMI_ROAM_NEIGHBOR_REPORT_INFO_NUM_OF_NRIE_GET(src_data->neighbor_report_detail);
dst->band = band;
dst->band =
WMI_ROAM_NEIGHBOR_REPORT_INFO_MLO_BAND_INFO_GET(src_data->neighbor_report_detail);
if (dst->band != WMI_MLO_BAND_NO_MLO)
dst->is_mlo = true;
@@ -20159,7 +20159,7 @@ extract_roam_result_stats_tlv(wmi_unified_t wmi_handle, void *evt_buf,
static QDF_STATUS
extract_roam_11kv_stats_tlv(wmi_unified_t wmi_handle, void *evt_buf,
struct wmi_neighbor_report_data *dst,
uint8_t idx, uint8_t rpt_idx, uint8_t band)
uint8_t idx, uint8_t rpt_idx)
{
return QDF_STATUS_E_NOSUPPORT;
}