]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
wifi: iwlwifi: mvm: use the right version of the rate API
authorEmmanuel Grumbach <emmanuel.grumbach@intel.com>
Sun, 9 Feb 2025 12:34:50 +0000 (14:34 +0200)
committerJohannes Berg <johannes.berg@intel.com>
Tue, 11 Feb 2025 11:41:46 +0000 (12:41 +0100)
The firmware uses the newer version of the API in recent devices. For
older devices, we translate the rate to the new format.
Don't parse the rate with old parsing macros.

Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
Reviewed-by: Johannes Berg <johannes.berg@intel.com>
Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com>
Link: https://patch.msgid.link/20250209143303.13d70cdcbb4e.Ic92193bce4013b70a823cfef250ee79c16cf7c17@changeid
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
drivers/net/wireless/intel/iwlwifi/mvm/rxmq.c

index 09fd8752046ee2d9c4cbc99e7f7be9de14c299ae..14ea89f931bbf365d95e0fe22ff0d8a0726c66df 100644 (file)
@@ -995,7 +995,7 @@ iwl_mvm_decode_he_phy_ru_alloc(struct iwl_mvm_rx_phy_data *phy_data,
         */
        u8 ru = le32_get_bits(phy_data->d1, IWL_RX_PHY_DATA1_HE_RU_ALLOC_MASK);
        u32 rate_n_flags = phy_data->rate_n_flags;
-       u32 he_type = rate_n_flags & RATE_MCS_HE_TYPE_MSK_V1;
+       u32 he_type = rate_n_flags & RATE_MCS_HE_TYPE_MSK;
        u8 offs = 0;
 
        rx_status->bw = RATE_INFO_BW_HE_RU;
@@ -1050,13 +1050,13 @@ iwl_mvm_decode_he_phy_ru_alloc(struct iwl_mvm_rx_phy_data *phy_data,
 
        if (he_mu)
                he_mu->flags2 |=
-                       le16_encode_bits(FIELD_GET(RATE_MCS_CHAN_WIDTH_MSK_V1,
+                       le16_encode_bits(FIELD_GET(RATE_MCS_CHAN_WIDTH_MSK,
                                                   rate_n_flags),
                                         IEEE80211_RADIOTAP_HE_MU_FLAGS2_BW_FROM_SIG_A_BW);
-       else if (he_type == RATE_MCS_HE_TYPE_TRIG_V1)
+       else if (he_type == RATE_MCS_HE_TYPE_TRIG)
                he->data6 |=
                        cpu_to_le16(IEEE80211_RADIOTAP_HE_DATA6_TB_PPDU_BW_KNOWN) |
-                       le16_encode_bits(FIELD_GET(RATE_MCS_CHAN_WIDTH_MSK_V1,
+                       le16_encode_bits(FIELD_GET(RATE_MCS_CHAN_WIDTH_MSK,
                                                   rate_n_flags),
                                         IEEE80211_RADIOTAP_HE_DATA6_TB_PPDU_BW);
 }