bool he_fixed_rate = false, vht_fixed_rate = false;
        struct ath11k_peer *peer, *tmp;
        const u16 *vht_mcs_mask, *he_mcs_mask;
+       struct ieee80211_link_sta *deflink;
        u8 vht_nss, he_nss;
        bool ret = true;
 
        spin_lock_bh(&ar->ab->base_lock);
        list_for_each_entry_safe(peer, tmp, &ar->ab->peers, list) {
                if (peer->sta) {
-                       if (vht_fixed_rate && (!peer->sta->deflink.vht_cap.vht_supported ||
-                                              peer->sta->deflink.rx_nss < vht_nss)) {
+                       deflink = &peer->sta->deflink;
+
+                       if (vht_fixed_rate && (!deflink->vht_cap.vht_supported ||
+                                              deflink->rx_nss < vht_nss)) {
                                ret = false;
                                goto out;
                        }
-                       if (he_fixed_rate && (!peer->sta->deflink.he_cap.has_he ||
-                                             peer->sta->deflink.rx_nss < he_nss)) {
+
+                       if (he_fixed_rate && (!deflink->he_cap.has_he ||
+                                             deflink->rx_nss < he_nss)) {
                                ret = false;
                                goto out;
                        }