]> asedeno.scripts.mit.edu Git - linux.git/commitdiff
iwlwifi: mvm: convert to FW AC when configuring MU EDCA
authorShaul Triebitz <shaul.triebitz@intel.com>
Tue, 1 May 2018 10:28:23 +0000 (13:28 +0300)
committerLuca Coelho <luciano.coelho@intel.com>
Sat, 29 Jun 2019 07:09:39 +0000 (10:09 +0300)
The AC numbers used by mac80211 differ from those used
by the firmware.  When setting MU EDCA params for each
AC, use the correct FW AC numbers.

Signed-off-by: Shaul Triebitz <shaul.triebitz@intel.com>
Signed-off-by: Luca Coelho <luciano.coelho@intel.com>
drivers/net/wireless/intel/iwlwifi/mvm/mac80211.c

index f94a3a4a11918b4e89ba66030f5eaa4a51615759..f600133376b2be6d3be05f4f3ce5ba88d8499d93 100644 (file)
@@ -2365,22 +2365,23 @@ static void iwl_mvm_cfg_he_sta(struct iwl_mvm *mvm,
 
        /* Mark MU EDCA as enabled, unless none detected on some AC */
        flags |= STA_CTXT_HE_MU_EDCA_CW;
-       for (i = 0; i < AC_NUM; i++) {
+       for (i = 0; i < IEEE80211_NUM_ACS; i++) {
                struct ieee80211_he_mu_edca_param_ac_rec *mu_edca =
                        &mvmvif->queue_params[i].mu_edca_param_rec;
+               u8 ac = iwl_mvm_mac80211_ac_to_ucode_ac(i);
 
                if (!mvmvif->queue_params[i].mu_edca) {
                        flags &= ~STA_CTXT_HE_MU_EDCA_CW;
                        break;
                }
 
-               sta_ctxt_cmd.trig_based_txf[i].cwmin =
+               sta_ctxt_cmd.trig_based_txf[ac].cwmin =
                        cpu_to_le16(mu_edca->ecw_min_max & 0xf);
-               sta_ctxt_cmd.trig_based_txf[i].cwmax =
+               sta_ctxt_cmd.trig_based_txf[ac].cwmax =
                        cpu_to_le16((mu_edca->ecw_min_max & 0xf0) >> 4);
-               sta_ctxt_cmd.trig_based_txf[i].aifsn =
+               sta_ctxt_cmd.trig_based_txf[ac].aifsn =
                        cpu_to_le16(mu_edca->aifsn);
-               sta_ctxt_cmd.trig_based_txf[i].mu_time =
+               sta_ctxt_cmd.trig_based_txf[ac].mu_time =
                        cpu_to_le16(mu_edca->mu_edca_timer);
        }