.dccm2_len = IWL_22000_DCCM2_LEN,                               \
        .smem_offset = IWL_22000_SMEM_OFFSET,                           \
        .smem_len = IWL_22000_SMEM_LEN,                                 \
-       .features = IWL_TX_CSUM_NETIF_FLAGS_BZ | NETIF_F_RXCSUM,        \
        .apmg_not_supported = true,                                     \
        .trans.mq_rx_supported = true,                                  \
        .vht_mu_mimo_supported = true,                                  \
        .fw_name_pre = IWL_BZ_A_HR_B_FW_PRE,
        .uhb_supported = true,
        IWL_DEVICE_BZ,
+       .features = IWL_TX_CSUM_NETIF_FLAGS_BZ | NETIF_F_RXCSUM,
        .num_rbds = IWL_NUM_RBDS_AX210_HE,
 };
 
        .fw_name_pre = IWL_BZ_A_GF_A_FW_PRE,
        .uhb_supported = true,
        IWL_DEVICE_BZ,
+       .features = IWL_TX_CSUM_NETIF_FLAGS_BZ | NETIF_F_RXCSUM,
        .num_rbds = IWL_NUM_RBDS_AX210_HE,
 };
 
        .fw_name_pre = IWL_BZ_A_GF4_A_FW_PRE,
        .uhb_supported = true,
        IWL_DEVICE_BZ,
+       .features = IWL_TX_CSUM_NETIF_FLAGS_BZ | NETIF_F_RXCSUM,
        .num_rbds = IWL_NUM_RBDS_AX210_HE,
 };
 
        .fw_name_pre = IWL_BZ_A_MR_A_FW_PRE,
        .uhb_supported = true,
        IWL_DEVICE_BZ,
+       .features = IWL_TX_CSUM_NETIF_FLAGS_BZ | NETIF_F_RXCSUM,
        .num_rbds = IWL_NUM_RBDS_AX210_HE,
 };
 
        .fw_name_pre = IWL_BZ_A_FM_A_FW_PRE,
        .uhb_supported = true,
        IWL_DEVICE_BZ,
+       .features = IWL_TX_CSUM_NETIF_FLAGS_BZ | NETIF_F_RXCSUM,
        .num_rbds = IWL_NUM_RBDS_AX210_HE,
 };
 
        .fw_name_pre = IWL_BZ_A_FM4_A_FW_PRE,
        .uhb_supported = true,
        IWL_DEVICE_BZ,
+       .features = IWL_TX_CSUM_NETIF_FLAGS_BZ | NETIF_F_RXCSUM,
        .num_rbds = IWL_NUM_RBDS_AX210_HE,
 };
 
        .fw_name_pre = IWL_GL_A_FM_A_FW_PRE,
        .uhb_supported = true,
        IWL_DEVICE_BZ,
+       .features = IWL_TX_CSUM_NETIF_FLAGS | NETIF_F_RXCSUM,
        .num_rbds = IWL_NUM_RBDS_AX210_HE,
 };
 
        .fw_name_pre = IWL_GL_B_FM_B_FW_PRE,
        .uhb_supported = true,
        IWL_DEVICE_BZ,
+       .features = IWL_TX_CSUM_NETIF_FLAGS_BZ | NETIF_F_RXCSUM,
        .num_rbds = IWL_NUM_RBDS_AX210_HE,
 };
 
        .fw_name_pre = IWL_BZ_Z_GF_A_FW_PRE,
        .uhb_supported = true,
        IWL_DEVICE_BZ,
+       .features = IWL_TX_CSUM_NETIF_FLAGS_BZ | NETIF_F_RXCSUM,
        .num_rbds = IWL_NUM_RBDS_AX210_HE,
 };
 
        .fw_name_pre = IWL_BNJ_A_FM_A_FW_PRE,
        .uhb_supported = true,
        IWL_DEVICE_BZ,
+       .features = IWL_TX_CSUM_NETIF_FLAGS | NETIF_F_RXCSUM,
        .num_rbds = IWL_NUM_RBDS_AX210_HE,
 };
 
        .fw_name_pre = IWL_BNJ_A_FM4_A_FW_PRE,
        .uhb_supported = true,
        IWL_DEVICE_BZ,
+       .features = IWL_TX_CSUM_NETIF_FLAGS | NETIF_F_RXCSUM,
        .num_rbds = IWL_NUM_RBDS_AX210_HE,
 };
 
        .fw_name_pre = IWL_BNJ_A_GF_A_FW_PRE,
        .uhb_supported = true,
        IWL_DEVICE_BZ,
+       .features = IWL_TX_CSUM_NETIF_FLAGS | NETIF_F_RXCSUM,
        .num_rbds = IWL_NUM_RBDS_AX210_HE,
 };
 
        .fw_name_pre = IWL_BNJ_A_GF4_A_FW_PRE,
        .uhb_supported = true,
        IWL_DEVICE_BZ,
+       .features = IWL_TX_CSUM_NETIF_FLAGS | NETIF_F_RXCSUM,
        .num_rbds = IWL_NUM_RBDS_AX210_HE,
 };
 
        .fw_name_pre = IWL_BNJ_A_HR_B_FW_PRE,
        .uhb_supported = true,
        IWL_DEVICE_BZ,
+       .features = IWL_TX_CSUM_NETIF_FLAGS | NETIF_F_RXCSUM,
        .num_rbds = IWL_NUM_RBDS_AX210_HE,
 };
 
        .fw_name_pre = IWL_BNJ_B_FM_B_FW_PRE,
        .uhb_supported = true,
        IWL_DEVICE_BZ,
+       .features = IWL_TX_CSUM_NETIF_FLAGS_BZ | NETIF_F_RXCSUM,
        .num_rbds = IWL_NUM_RBDS_AX210_HE,
 };
 MODULE_FIRMWARE(IWL_QU_B_HR_B_MODULE_FIRMWARE(IWL_22000_UCODE_API_MAX));
 
 // SPDX-License-Identifier: GPL-2.0 OR BSD-3-Clause
 /*
- * Copyright (C) 2012-2014, 2018-2021 Intel Corporation
+ * Copyright (C) 2012-2014, 2018-2022 Intel Corporation
  * Copyright (C) 2013-2015 Intel Mobile Communications GmbH
  * Copyright (C) 2016-2017 Intel Deutschland GmbH
  */
                           struct ieee80211_tx_info *info,
                           bool amsdu)
 {
-       if (mvm->trans->trans_cfg->device_family < IWL_DEVICE_FAMILY_BZ)
+       if (mvm->trans->trans_cfg->device_family < IWL_DEVICE_FAMILY_BZ ||
+           (mvm->trans->trans_cfg->device_family == IWL_DEVICE_FAMILY_BZ &&
+            CSR_HW_REV_TYPE(mvm->trans->hw_rev) == IWL_CFG_MAC_TYPE_GL &&
+            mvm->trans->hw_rev_step == SILICON_A_STEP))
                return iwl_mvm_tx_csum_pre_bz(mvm, skb, info, amsdu);
        return iwl_mvm_tx_csum_bz(mvm, skb, amsdu);
 }