qcacld-3.0: Consider connected AP for roaming candidate

If reassoc MAC from user space is broadcast MAC as:
"wpa_cli DRIVER FASTREASSOC ff:ff:ff:ff:ff:ff 0",
user space invoked roaming candidate selection will be based on firmware
score algorithm, current connection will be kept if current AP has highest
score. It is requirement from customer which can avoid ping-pong roaming.

Change-Id: I8de3e2a26a6f346c900157aa823205f849d233f7
CRs-Fixed: 3106276
This commit is contained in:
Jianmin Zhu
2022-01-13 18:35:45 +08:00
committed by Madan Koyyalamudi
parent 03832d28a5
commit cd9d714bbb
4 changed files with 39 additions and 7 deletions

View File

@@ -1028,6 +1028,14 @@ static QDF_STATUS send_roam_invoke_cmd_tlv(wmi_unified_t wmi_handle,
cmd->flags |=
(1 << WMI_ROAM_INVOKE_FLAG_FULL_SCAN_IF_NO_CANDIDATE);
cmd->reason = ROAM_INVOKE_REASON_NUD_FAILURE;
} else if (qdf_is_macaddr_broadcast(&roaminvoke->target_bssid)) {
cmd->num_chan = 0;
cmd->num_bssid = 0;
cmd->roam_scan_mode = WMI_ROAM_INVOKE_SCAN_MODE_CACHE_MAP;
cmd->flags |=
(1 << WMI_ROAM_INVOKE_FLAG_FULL_SCAN_IF_NO_CANDIDATE) |
(1 << WMI_ROAM_INVOKE_FLAG_SELECT_CANDIDATE_CONSIDER_SCORE);
cmd->reason = ROAM_INVOKE_REASON_USER_SPACE;
} else {
cmd->reason = ROAM_INVOKE_REASON_USER_SPACE;
}