iwlwifi: mvm: read IWL_RX_MPDU_PHY_SHORT_PREAMBLE only for CCK
authorJohannes Berg <johannes.berg@intel.com>
Mon, 29 Oct 2018 08:44:03 +0000 (09:44 +0100)
committerLuca Coelho <luciano.coelho@intel.com>
Tue, 29 Jan 2019 14:10:29 +0000 (16:10 +0200)
Due to a general shortage of RX API bits, the firmware is going
to reuse this bit on non-CCK frames to mean something else. Use
it only on CCK frames to prepare for that change.

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 07ddd7bc07ce796b8792dd7c1580822a0ce01005..9342f61b702e2b7eb3e0657fed3e2d2babf3f059 100644 (file)
@@ -1408,7 +1408,8 @@ void iwl_mvm_rx_mpdu_mq(struct iwl_mvm *mvm, struct napi_struct *napi,
                rx_status->flag |= RX_FLAG_FAILED_FCS_CRC;
        }
        /* set the preamble flag if appropriate */
-       if (phy_info & IWL_RX_MPDU_PHY_SHORT_PREAMBLE)
+       if (rate_n_flags & RATE_MCS_CCK_MSK &&
+           phy_info & IWL_RX_MPDU_PHY_SHORT_PREAMBLE)
                rx_status->enc_flags |= RX_ENC_FLAG_SHORTPRE;
 
        if (likely(!(phy_info & IWL_RX_MPDU_PHY_TSF_OVERLOAD))) {