wifi: iwlwifi: mvm: Correctly report TSF data in scan complete
For an MLO connection, the BSSID of the link used during the scanning should be used (and not the one from the default link). Signed-off-by: Ilan Peer <ilan.peer@intel.com> Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com> Link: https://msgid.link/20231207044813.1e67dba640c1.I6c4941bfab3a04498370e58b402c64d990c39fbf@changeid Signed-off-by: Johannes Berg <johannes.berg@intel.com>
This commit is contained in:
parent
85e7f82358
commit
3a5a5cb067
@ -947,6 +947,7 @@ struct iwl_mvm {
|
||||
|
||||
/* the vif that requested the current scan */
|
||||
struct iwl_mvm_vif *scan_vif;
|
||||
u8 scan_link_id;
|
||||
|
||||
/* rx chain antennas set through debugfs for the scan command */
|
||||
u8 scan_rx_ant;
|
||||
|
@ -2343,12 +2343,15 @@ iwl_mvm_scan_umac_fill_general_p_v12(struct iwl_mvm *mvm,
|
||||
if (gen_flags & IWL_UMAC_SCAN_GEN_FLAGS_V2_FRAGMENTED_LMAC2)
|
||||
gp->num_of_fragments[SCAN_HB_LMAC_IDX] = IWL_SCAN_NUM_OF_FRAGS;
|
||||
|
||||
mvm->scan_link_id = 0;
|
||||
|
||||
if (version < 16) {
|
||||
gp->scan_start_mac_or_link_id = scan_vif->id;
|
||||
} else {
|
||||
struct iwl_mvm_vif_link_info *link_info =
|
||||
scan_vif->link[params->tsf_report_link_id];
|
||||
|
||||
mvm->scan_link_id = params->tsf_report_link_id;
|
||||
if (!WARN_ON(!link_info))
|
||||
gp->scan_start_mac_or_link_id = link_info->fw_link_id;
|
||||
}
|
||||
@ -3165,8 +3168,13 @@ void iwl_mvm_rx_umac_scan_complete_notif(struct iwl_mvm *mvm,
|
||||
.aborted = aborted,
|
||||
.scan_start_tsf = mvm->scan_start,
|
||||
};
|
||||
struct iwl_mvm_vif *scan_vif = mvm->scan_vif;
|
||||
struct iwl_mvm_vif_link_info *link_info =
|
||||
scan_vif->link[mvm->scan_link_id];
|
||||
|
||||
if (!WARN_ON(!link_info))
|
||||
memcpy(info.tsf_bssid, link_info->bssid, ETH_ALEN);
|
||||
|
||||
memcpy(info.tsf_bssid, mvm->scan_vif->deflink.bssid, ETH_ALEN);
|
||||
ieee80211_scan_completed(mvm->hw, &info);
|
||||
mvm->scan_vif = NULL;
|
||||
cancel_delayed_work(&mvm->scan_timeout_dwork);
|
||||
|
Loading…
x
Reference in New Issue
Block a user