qcacld-3.0: Send BMISS disconnection event after roam result event
Currently the beacon miss disconnection is sent when host wlan driver triggers disconnect and roam result is printed after the roam stats event is received. Since roam stats event is received after host triggers disconnect, the order of prints is BMISS_DISCONN -> ROAM SCAN -> ROAM_SCAN_DONE-> ROAM_RESULT. But the expected order is ROAM_SCAN->ROAM_SCAN_DONE->ROAM_RESULT ->BMISS_DISCONN. So send beacon miss disconnection event after roam result. Change-Id: Ib1695962bc1613fa4101cebf28b188db42fb5ab5 CRs-Fixed: 3152370
This commit is contained in:

committed by
Madan Koyyalamudi

parent
00b8c44109
commit
54fee51319
@@ -2913,6 +2913,7 @@ cm_roam_stats_print_scan_info(struct wmi_roam_scan_data *scan, uint8_t vdev_id,
|
||||
|
||||
/**
|
||||
* cm_roam_stats_print_roam_result() - Print roam result related info
|
||||
* @psoc: Pointer to psoc object
|
||||
* @res: Roam result strucure pointer
|
||||
* @vdev_id: Vdev id
|
||||
*
|
||||
@@ -2921,7 +2922,9 @@ cm_roam_stats_print_scan_info(struct wmi_roam_scan_data *scan, uint8_t vdev_id,
|
||||
* Return: None
|
||||
*/
|
||||
static void
|
||||
cm_roam_stats_print_roam_result(struct wmi_roam_result *res,
|
||||
cm_roam_stats_print_roam_result(struct wlan_objmgr_psoc *psoc,
|
||||
struct wmi_roam_trigger_info *trigger,
|
||||
struct wmi_roam_result *res,
|
||||
struct wmi_roam_scan_data *scan_data,
|
||||
uint8_t vdev_id)
|
||||
{
|
||||
@@ -2929,7 +2932,7 @@ cm_roam_stats_print_roam_result(struct wmi_roam_result *res,
|
||||
char time[TIME_STRING_LEN];
|
||||
|
||||
/* Update roam result info to userspace */
|
||||
cm_roam_result_info_event(res, scan_data, vdev_id);
|
||||
cm_roam_result_info_event(psoc, trigger, res, scan_data, vdev_id);
|
||||
|
||||
buf = qdf_mem_malloc(ROAM_FAILURE_BUF_SIZE);
|
||||
if (!buf)
|
||||
@@ -3172,7 +3175,9 @@ cm_roam_stats_event_handler(struct wlan_objmgr_psoc *psoc,
|
||||
stats_info->trigger[i].timestamp);
|
||||
|
||||
if (stats_info->result[i].present) {
|
||||
cm_roam_stats_print_roam_result(&stats_info->result[i],
|
||||
cm_roam_stats_print_roam_result(psoc,
|
||||
&stats_info->trigger[i],
|
||||
&stats_info->result[i],
|
||||
&stats_info->scan[i],
|
||||
stats_info->vdev_id);
|
||||
status = wlan_cm_update_roam_states(psoc,
|
||||
|
Reference in New Issue
Block a user