|
@@ -2177,7 +2177,7 @@ lim_roam_fill_bss_descr(struct mac_context *mac,
|
|
|
QDF_STATUS status = QDF_STATUS_SUCCESS;
|
|
|
uint8_t *ie = NULL;
|
|
|
struct qdf_mac_addr bssid;
|
|
|
- bool is_mlo_link = false;
|
|
|
+ bool is_mlo_link;
|
|
|
uint8_t vdev_id = session->vdev_id;
|
|
|
struct element_info frame;
|
|
|
struct cm_roam_values_copy mdie_cfg = {0};
|
|
@@ -2189,30 +2189,21 @@ lim_roam_fill_bss_descr(struct mac_context *mac,
|
|
|
frame.ptr = NULL;
|
|
|
frame.len = 0;
|
|
|
if (is_multi_link_roam(roam_synch_ind)) {
|
|
|
- if (roam_synch_ind->link_beacon_probe_resp_length) {
|
|
|
- if (wlan_vdev_mlme_get_is_mlo_link(mac->psoc,
|
|
|
- vdev_id)) {
|
|
|
- bcn_proberesp_ptr = (uint8_t *)roam_synch_ind +
|
|
|
- roam_synch_ind->link_beacon_probe_resp_offset;
|
|
|
- bcn_proberesp_len =
|
|
|
- roam_synch_ind->link_beacon_probe_resp_length;
|
|
|
- }
|
|
|
- } else {
|
|
|
- mlo_get_sta_link_mac_addr(vdev_id, roam_synch_ind,
|
|
|
- &bssid);
|
|
|
- status = wlan_scan_get_entry_by_mac_addr(mac->pdev,
|
|
|
- &bssid,
|
|
|
- &frame);
|
|
|
- if (QDF_IS_STATUS_ERROR(status) && !frame.len) {
|
|
|
- pe_err("Failed to get scan entry for " QDF_MAC_ADDR_FMT,
|
|
|
- QDF_MAC_ADDR_REF(bssid.bytes));
|
|
|
- return status;
|
|
|
- }
|
|
|
- bcn_proberesp_ptr = frame.ptr;
|
|
|
- bcn_proberesp_len = frame.len;
|
|
|
+ mlo_get_sta_link_mac_addr(vdev_id, roam_synch_ind, &bssid);
|
|
|
+ is_mlo_link = wlan_vdev_mlme_get_is_mlo_link(mac->psoc, vdev_id);
|
|
|
+
|
|
|
+ status = wlan_scan_get_entry_by_mac_addr(mac->pdev, &bssid,
|
|
|
+ &frame);
|
|
|
+ if (QDF_IS_STATUS_ERROR(status) || !frame.len) {
|
|
|
+ pe_err("Failed to get scan entry for " QDF_MAC_ADDR_FMT,
|
|
|
+ QDF_MAC_ADDR_REF(bssid.bytes));
|
|
|
+ return status;
|
|
|
}
|
|
|
- if (wlan_vdev_mlme_get_is_mlo_link(mac->psoc, vdev_id))
|
|
|
- is_mlo_link = true;
|
|
|
+ bcn_proberesp_ptr = frame.ptr;
|
|
|
+ bcn_proberesp_len = frame.len;
|
|
|
+ } else {
|
|
|
+ bssid = roam_synch_ind->bssid;
|
|
|
+ is_mlo_link = false;
|
|
|
}
|
|
|
|
|
|
mac_hdr = (tpSirMacMgmtHdr)bcn_proberesp_ptr;
|
|
@@ -2229,11 +2220,6 @@ lim_roam_fill_bss_descr(struct mac_context *mac,
|
|
|
goto done;
|
|
|
}
|
|
|
|
|
|
- if (is_multi_link_roam(roam_synch_ind))
|
|
|
- mlo_get_sta_link_mac_addr(vdev_id, roam_synch_ind, &bssid);
|
|
|
- else
|
|
|
- bssid = roam_synch_ind->bssid;
|
|
|
-
|
|
|
pe_debug("LFR3:Beacon/Prb Rsp: %d bssid " QDF_MAC_ADDR_FMT
|
|
|
" beacon " QDF_MAC_ADDR_FMT,
|
|
|
is_mlo_link ? roam_synch_ind->is_link_beacon :
|