wifi: iwlwifi: mvm: use the link sta address
authorShaul Triebitz <shaul.triebitz@intel.com>
Wed, 29 Mar 2023 07:05:17 +0000 (10:05 +0300)
committerJohannes Berg <johannes.berg@intel.com>
Thu, 30 Mar 2023 10:08:39 +0000 (12:08 +0200)
Replace the deflink.addr with the proper link address
for setting the peer_link_address in the station command.
For a non-MLD station, it will be the deflink.

Signed-off-by: Shaul Triebitz <shaul.triebitz@intel.com>
Signed-off-by: Gregory Greenman <gregory.greenman@intel.com>
Link: https://lore.kernel.org/r/20230329100039.03ab287da0ae.I88fb5ab4e3ea9c886a3fac7ce09c4791469c3c8e@changeid
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
drivers/net/wireless/intel/iwlwifi/mvm/mld-sta.c

index da9d2cefa509d5384317e4cd4d85bb6b22d8dd3a..c877c94dd1d6b5e28716d08b1d1aced95acb7f54 100644 (file)
@@ -399,8 +399,7 @@ static int iwl_mvm_mld_cfg_sta(struct iwl_mvm *mvm, struct ieee80211_sta *sta,
        cmd.link_id = cpu_to_le32(link_info->fw_link_id);
 
        memcpy(&cmd.peer_mld_address, sta->addr, ETH_ALEN);
-       /* FIXME: use the correct link */
-       memcpy(&cmd.peer_link_address, sta->deflink.addr, ETH_ALEN);
+       memcpy(&cmd.peer_link_address, link_sta->addr, ETH_ALEN);
 
        if (mvm_sta->sta_state >= IEEE80211_STA_ASSOC)
                cmd.assoc_id = cpu_to_le32(sta->aid);