wifi: iwlwifi: mvm: add support for EHT 1K aggregation size
authorMordechay Goodstein <mordechay.goodstein@intel.com>
Tue, 22 Nov 2022 20:10:35 +0000 (22:10 +0200)
committerGregory Greenman <gregory.greenman@intel.com>
Mon, 28 Nov 2022 15:53:12 +0000 (17:53 +0200)
In 11be we can receive 1K aggregation size so update our max HW rx
aggregation for mac80211 usage.

Signed-off-by: Mordechay Goodstein <mordechay.goodstein@intel.com>
Link: https://lore.kernel.org/r/20221122220713.ef0431f64975.Ie4d90c376c822694f4523ff0fb5731f20004c24d@changeid
Signed-off-by: Gregory Greenman <gregory.greenman@intel.com>
drivers/net/wireless/intel/iwlwifi/mvm/ops.c

index 9699433137bcdd9a54db65d320acc946574408b7..2a4db13c9dcfac3d8406f76ace9ac31b3eae8f1e 100644 (file)
@@ -1077,6 +1077,7 @@ iwl_op_mode_mvm_start(struct iwl_trans *trans, const struct iwl_cfg *cfg,
        static const u8 no_reclaim_cmds[] = {
                TX_CMD,
        };
+       u32 max_agg;
        size_t scan_size;
        u32 min_backoff;
        struct iwl_mvm_csme_conn_info *csme_conn_info __maybe_unused;
@@ -1098,12 +1099,17 @@ iwl_op_mode_mvm_start(struct iwl_trans *trans, const struct iwl_cfg *cfg,
        if (!hw)
                return NULL;
 
-       hw->max_rx_aggregation_subframes = IEEE80211_MAX_AMPDU_BUF_HE;
+       if (trans->trans_cfg->device_family >= IWL_DEVICE_FAMILY_BZ)
+               max_agg = IEEE80211_MAX_AMPDU_BUF_EHT;
+       else
+               max_agg = IEEE80211_MAX_AMPDU_BUF_HE;
+
+       hw->max_rx_aggregation_subframes = max_agg;
 
        if (cfg->max_tx_agg_size)
                hw->max_tx_aggregation_subframes = cfg->max_tx_agg_size;
        else
-               hw->max_tx_aggregation_subframes = IEEE80211_MAX_AMPDU_BUF_HE;
+               hw->max_tx_aggregation_subframes = max_agg;
 
        op_mode = hw->priv;