* @IWL_UCODE_TLV_API_NEW_RX_STATS: should new RX STATISTICS API be used
  * @IWL_UCODE_TLV_API_QUOTA_LOW_LATENCY: Quota command includes a field
  *     indicating low latency direction.
+ * @IWL_UCODE_TLV_API_DEPRECATE_TTAK: RX status flag TTAK ok (bit 7) is
+ *     deprecated.
  *
  * @NUM_IWL_UCODE_TLV_API: number of bits used
  */
        IWL_UCODE_TLV_API_NEW_BEACON_TEMPLATE   = (__force iwl_ucode_tlv_api_t)34,
        IWL_UCODE_TLV_API_NEW_RX_STATS          = (__force iwl_ucode_tlv_api_t)35,
        IWL_UCODE_TLV_API_QUOTA_LOW_LATENCY     = (__force iwl_ucode_tlv_api_t)38,
+       IWL_UCODE_TLV_API_DEPRECATE_TTAK        = (__force iwl_ucode_tlv_api_t)41,
 
        NUM_IWL_UCODE_TLV_API
 #ifdef __CHECKER__
 
 
        case RX_MPDU_RES_STATUS_SEC_TKIP_ENC:
                /* Don't drop the frame and decrypt it in SW */
-               if (!(rx_pkt_status & RX_MPDU_RES_STATUS_TTAK_OK))
+               if (!fw_has_api(&mvm->fw->ucode_capa,
+                               IWL_UCODE_TLV_API_DEPRECATE_TTAK) &&
+                   !(rx_pkt_status & RX_MPDU_RES_STATUS_TTAK_OK))
                        return 0;
                *crypt_len = IEEE80211_TKIP_IV_LEN;
                /* fall through if TTAK OK */
 
                return 0;
        case IWL_RX_MPDU_STATUS_SEC_TKIP:
                /* Don't drop the frame and decrypt it in SW */
-               if (!(status & IWL_RX_MPDU_RES_STATUS_TTAK_OK))
+               if (!fw_has_api(&mvm->fw->ucode_capa,
+                               IWL_UCODE_TLV_API_DEPRECATE_TTAK) &&
+                   !(status & IWL_RX_MPDU_RES_STATUS_TTAK_OK))
                        return 0;
 
                *crypt_len = IEEE80211_TKIP_IV_LEN;