]> git.baikalelectronics.ru Git - kernel.git/commitdiff
iwlwifi: mvm: put HE SIG-B symbols/users data correctly
authorJohannes Berg <johannes.berg@intel.com>
Fri, 15 Jun 2018 07:43:43 +0000 (09:43 +0200)
committerLuca Coelho <luciano.coelho@intel.com>
Sat, 6 Oct 2018 07:25:46 +0000 (10:25 +0300)
As detected by Luca during code review when I move this in the
next patch, the code here is putting the data into the wrong
field (flags1 instead of flags2). Fix that.

Fixes: 463fc8af1fac ("iwlwifi: mvm: add radiotap data for HE")
Reported-by: Luca Coelho <luciano.coelho@intel.com>
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Signed-off-by: Luca Coelho <luciano.coelho@intel.com>
drivers/net/wireless/intel/iwlwifi/mvm/rxmq.c

index 7480df82e53ae1a0647bf478dc409a9e6952498f..1288fdfc9c691389082ef76abafd3a9f9c12b970 100644 (file)
@@ -989,10 +989,6 @@ static void iwl_mvm_rx_he(struct iwl_mvm *mvm, struct sk_buff *skb,
                                rx_status->flag |= RX_FLAG_AMPDU_EOF_BIT;
                }
        } else if (he_phy_data != HE_PHY_DATA_INVAL && he_mu) {
-               he_mu->flags1 |=
-                       le16_encode_bits(FIELD_GET(IWL_RX_HE_PHY_MU_SIBG_SYM_OR_USER_NUM_MASK,
-                                                  he_phy_data),
-                                        IEEE80211_RADIOTAP_HE_MU_FLAGS2_SIG_B_SYMS_USERS);
                he_mu->flags1 |=
                        le16_encode_bits(FIELD_GET(IWL_RX_HE_PHY_MU_SIGB_DCM,
                                                   he_phy_data),
@@ -1001,6 +997,10 @@ static void iwl_mvm_rx_he(struct iwl_mvm *mvm, struct sk_buff *skb,
                        le16_encode_bits(FIELD_GET(IWL_RX_HE_PHY_MU_SIGB_MCS_MASK,
                                                   he_phy_data),
                                         IEEE80211_RADIOTAP_HE_MU_FLAGS1_SIG_B_MCS);
+               he_mu->flags2 |=
+                       le16_encode_bits(FIELD_GET(IWL_RX_HE_PHY_MU_SIBG_SYM_OR_USER_NUM_MASK,
+                                                  he_phy_data),
+                                        IEEE80211_RADIOTAP_HE_MU_FLAGS2_SIG_B_SYMS_USERS);
                he_mu->flags2 |=
                        le16_encode_bits(FIELD_GET(IWL_RX_HE_PHY_MU_SIGB_COMPRESSION,
                                                   he_phy_data),