iwlwifi: mvm: disable tx aggregation on low latency vifs
[firefly-linux-kernel-4.4.55.git] / drivers / net / wireless / iwlwifi / mvm / rs.c
index b7a1efcac48054495cb2f958b615d900fb1b953c..940e0d02501268f7aa20388d78a93b5a185660c0 100644 (file)
@@ -2855,9 +2855,15 @@ static void rs_fill_lq_cmd(struct iwl_mvm *mvm,
         * Tx Fifo so that it can start a transaction in the same TxOP. This
         * basically allows the firmware to send bursts.
         */
-       if (iwl_mvm_vif_low_latency(mvmvif))
+       if (iwl_mvm_vif_low_latency(mvmvif)) {
                lq_cmd->agg_frame_cnt_limit--;
 
+               if (mvm->low_latency_agg_frame_limit)
+                       lq_cmd->agg_frame_cnt_limit =
+                               min(lq_cmd->agg_frame_cnt_limit,
+                                   mvm->low_latency_agg_frame_limit);
+       }
+
        if (mvmsta->vif->p2p)
                lq_cmd->flags |= LQ_FLAG_USE_RTS_MSK;