qcacld-3.0: Restart roam for LFR2 when there is no candidate
When the AP channel is changed, fw reports a suitable AP. But it's skipped by host as it has same bssid as the one currently associated. The same process repeats continually, which result in fail to reconnect with the AP. To avoid this, send BMISS indication to upper layer and restart roam. Change-Id: Idfcb69f81ce72a4ab7ef0c105f3af40cb92c53d5 CRs-Fixed: 2913663
This commit is contained in:

committed by
Madan Koyyalamudi

parent
00d622448a
commit
5a8e94dad0
@@ -2503,9 +2503,10 @@ cm_roam_restart_req(struct wlan_objmgr_psoc *psoc, uint8_t vdev_id,
|
|||||||
* and WMI_ROAM_REASON_SUITABLE_AP event was received earlier,
|
* and WMI_ROAM_REASON_SUITABLE_AP event was received earlier,
|
||||||
* now it is time to call it heartbeat failure.
|
* now it is time to call it heartbeat failure.
|
||||||
*/
|
*/
|
||||||
if (reason == REASON_PREAUTH_FAILED_FOR_ALL
|
if ((reason == REASON_PREAUTH_FAILED_FOR_ALL ||
|
||||||
&& mlme_get_roam_reason_better_ap(vdev)) {
|
reason == REASON_NO_CAND_FOUND_OR_NOT_ROAMING_NOW) &&
|
||||||
mlme_err("Sending heartbeat failure after preauth failures");
|
mlme_get_roam_reason_better_ap(vdev)) {
|
||||||
|
mlme_err("Sending heartbeat failure, reason %d", reason);
|
||||||
wlan_cm_send_beacon_miss(vdev_id, mlme_get_hb_ap_rssi(vdev));
|
wlan_cm_send_beacon_miss(vdev_id, mlme_get_hb_ap_rssi(vdev));
|
||||||
mlme_set_roam_reason_better_ap(vdev, false);
|
mlme_set_roam_reason_better_ap(vdev, false);
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user