aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless/intel/iwlwifi/mvm/utils.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/net/wireless/intel/iwlwifi/mvm/utils.c')
-rw-r--r--drivers/net/wireless/intel/iwlwifi/mvm/utils.c13
1 files changed, 7 insertions, 6 deletions
diff --git a/drivers/net/wireless/intel/iwlwifi/mvm/utils.c b/drivers/net/wireless/intel/iwlwifi/mvm/utils.c
index 423efab90607..7c138fedcb19 100644
--- a/drivers/net/wireless/intel/iwlwifi/mvm/utils.c
+++ b/drivers/net/wireless/intel/iwlwifi/mvm/utils.c
@@ -610,7 +610,7 @@ int iwl_mvm_reconfig_scd(struct iwl_mvm *mvm, int queue, int fifo, int sta_id,
610{ 610{
611 struct iwl_scd_txq_cfg_cmd cmd = { 611 struct iwl_scd_txq_cfg_cmd cmd = {
612 .scd_queue = queue, 612 .scd_queue = queue,
613 .enable = 1, 613 .action = SCD_CFG_ENABLE_QUEUE,
614 .window = frame_limit, 614 .window = frame_limit,
615 .sta_id = sta_id, 615 .sta_id = sta_id,
616 .ssn = cpu_to_le16(ssn), 616 .ssn = cpu_to_le16(ssn),
@@ -684,7 +684,7 @@ void iwl_mvm_enable_txq(struct iwl_mvm *mvm, int queue, int mac80211_queue,
684 if (enable_queue) { 684 if (enable_queue) {
685 struct iwl_scd_txq_cfg_cmd cmd = { 685 struct iwl_scd_txq_cfg_cmd cmd = {
686 .scd_queue = queue, 686 .scd_queue = queue,
687 .enable = 1, 687 .action = SCD_CFG_ENABLE_QUEUE,
688 .window = cfg->frame_limit, 688 .window = cfg->frame_limit,
689 .sta_id = cfg->sta_id, 689 .sta_id = cfg->sta_id,
690 .ssn = cpu_to_le16(ssn), 690 .ssn = cpu_to_le16(ssn),
@@ -711,7 +711,7 @@ void iwl_mvm_disable_txq(struct iwl_mvm *mvm, int queue, int mac80211_queue,
711{ 711{
712 struct iwl_scd_txq_cfg_cmd cmd = { 712 struct iwl_scd_txq_cfg_cmd cmd = {
713 .scd_queue = queue, 713 .scd_queue = queue,
714 .enable = 0, 714 .action = SCD_CFG_DISABLE_QUEUE,
715 }; 715 };
716 bool remove_mac_queue = true; 716 bool remove_mac_queue = true;
717 int ret; 717 int ret;
@@ -746,8 +746,9 @@ void iwl_mvm_disable_txq(struct iwl_mvm *mvm, int queue, int mac80211_queue,
746 ~BIT(mac80211_queue); 746 ~BIT(mac80211_queue);
747 mvm->queue_info[queue].hw_queue_refcount--; 747 mvm->queue_info[queue].hw_queue_refcount--;
748 748
749 cmd.enable = mvm->queue_info[queue].hw_queue_refcount ? 1 : 0; 749 cmd.action = mvm->queue_info[queue].hw_queue_refcount ?
750 if (!cmd.enable) 750 SCD_CFG_ENABLE_QUEUE : SCD_CFG_DISABLE_QUEUE;
751 if (cmd.action == SCD_CFG_DISABLE_QUEUE)
751 mvm->queue_info[queue].status = IWL_MVM_QUEUE_FREE; 752 mvm->queue_info[queue].status = IWL_MVM_QUEUE_FREE;
752 753
753 IWL_DEBUG_TX_QUEUES(mvm, 754 IWL_DEBUG_TX_QUEUES(mvm,
@@ -757,7 +758,7 @@ void iwl_mvm_disable_txq(struct iwl_mvm *mvm, int queue, int mac80211_queue,
757 mvm->queue_info[queue].hw_queue_to_mac80211); 758 mvm->queue_info[queue].hw_queue_to_mac80211);
758 759
759 /* If the queue is still enabled - nothing left to do in this func */ 760 /* If the queue is still enabled - nothing left to do in this func */
760 if (cmd.enable) { 761 if (cmd.action == SCD_CFG_ENABLE_QUEUE) {
761 spin_unlock_bh(&mvm->queue_info_lock); 762 spin_unlock_bh(&mvm->queue_info_lock);
762 return; 763 return;
763 } 764 }