summaryrefslogtreecommitdiff
path: root/drivers/net/wireless/intel/iwlwifi
diff options
context:
space:
mode:
authorMiri Korenblit <miriam.rachel.korenblit@intel.com>2023-03-28 10:58:54 +0300
committerJohannes Berg <johannes.berg@intel.com>2023-03-30 12:07:54 +0200
commit5ed461be3ca93197cef6e8fc7fe2b523a892b317 (patch)
treeb796de753f2b43fb2f3667868904bc7626807c59 /drivers/net/wireless/intel/iwlwifi
parent786810de9cf735ebfdbd0a09a0126364ae217ca7 (diff)
wifi: iwlwifi: mvm: always use the sta->addr as the peers addr
Currently we're setting the sta->addr as the peers address only if the iftype is NL80211_IFTYPE_AP, otherwise we are setting the bssid to be the addr. This causes bugs in TDLS. Fix this by always using the sta->addr. Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com> Signed-off-by: Gregory Greenman <gregory.greenman@intel.com> Link: https://lore.kernel.org/r/20230328104948.4c104c3074c4.I78912bb85251033e60db99a65165890779203612@changeid Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Diffstat (limited to 'drivers/net/wireless/intel/iwlwifi')
-rw-r--r--drivers/net/wireless/intel/iwlwifi/mvm/mld-sta.c9
1 files changed, 2 insertions, 7 deletions
diff --git a/drivers/net/wireless/intel/iwlwifi/mvm/mld-sta.c b/drivers/net/wireless/intel/iwlwifi/mvm/mld-sta.c
index fc380e59c740..41f6be7fe75e 100644
--- a/drivers/net/wireless/intel/iwlwifi/mvm/mld-sta.c
+++ b/drivers/net/wireless/intel/iwlwifi/mvm/mld-sta.c
@@ -380,13 +380,8 @@ static int iwl_mvm_mld_cfg_sta(struct iwl_mvm *mvm, struct ieee80211_sta *sta,
u32 agg_size = 0, mpdu_dens = 0;
/* For now the link addr is the same as the mld addr */
- if (vif->type == NL80211_IFTYPE_AP) {
- memcpy(&cmd.peer_mld_address, sta->addr, ETH_ALEN);
- memcpy(&cmd.peer_link_address, sta->addr, ETH_ALEN);
- } else if (vif->bss_conf.bssid) {
- memcpy(&cmd.peer_mld_address, vif->bss_conf.bssid, ETH_ALEN);
- memcpy(&cmd.peer_link_address, vif->bss_conf.bssid, ETH_ALEN);
- }
+ memcpy(&cmd.peer_mld_address, sta->addr, ETH_ALEN);
+ memcpy(&cmd.peer_link_address, sta->addr, ETH_ALEN);
if (mvm_sta->sta_state >= IEEE80211_STA_ASSOC)
cmd.assoc_id = cpu_to_le32(sta->aid);