Merge tag 'iwlwifi-next-for-kalle-2017-04-13' of git://git.kernel.org/pub/scm/linux...
authorKalle Valo <kvalo@codeaurora.org>
Tue, 18 Apr 2017 06:41:45 +0000 (09:41 +0300)
committerKalle Valo <kvalo@codeaurora.org>
Tue, 18 Apr 2017 06:41:45 +0000 (09:41 +0300)
Patches intended for v4.12:

  * Some small fixes here and there;
  * The usual cleanups and small improvements;
  * Work to support A000 devices continues;
  * New FW API version;
  * Some debugging improvements;

1  2 
drivers/net/wireless/intel/iwlwifi/mvm/mac-ctxt.c
drivers/net/wireless/intel/iwlwifi/mvm/mac80211.c
drivers/net/wireless/intel/iwlwifi/mvm/sta.c
drivers/net/wireless/intel/iwlwifi/mvm/tx.c

index 9d28db7f56aa2404825c530559df62afbca5d21a,2d68cee41306577c87b62118c98583a8ee9ac001..a552955f72f72a40f30e1e9e40368e856803bfb3
@@@ -1806,11 -1805,10 +1805,11 @@@ int iwl_mvm_send_add_bcast_sta(struct i
                        iwl_mvm_get_wd_timeout(mvm, vif, false, false);
                int queue;
  
 -              if (vif->type == NL80211_IFTYPE_AP)
 +              if (vif->type == NL80211_IFTYPE_AP ||
 +                  vif->type == NL80211_IFTYPE_ADHOC)
-                       queue = IWL_MVM_DQA_AP_PROBE_RESP_QUEUE;
+                       queue = mvm->probe_queue;
                else if (vif->type == NL80211_IFTYPE_P2P_DEVICE)
-                       queue = IWL_MVM_DQA_P2P_DEVICE_QUEUE;
+                       queue = mvm->p2p_dev_queue;
                else if (WARN(1, "Missing required TXQ for adding bcast STA\n"))
                        return -EINVAL;
  
@@@ -1864,29 -1836,18 +1863,23 @@@ static void iwl_mvm_free_bcast_sta_queu
  
        lockdep_assert_held(&mvm->mutex);
  
-       if (mvmvif->bcast_sta.tfd_queue_msk &
-           BIT(IWL_MVM_DQA_AP_PROBE_RESP_QUEUE)) {
-               iwl_mvm_disable_txq(mvm,
-                                   IWL_MVM_DQA_AP_PROBE_RESP_QUEUE,
 +      if (vif->type == NL80211_IFTYPE_AP ||
 +          vif->type == NL80211_IFTYPE_ADHOC)
 +              iwl_mvm_disable_txq(mvm, vif->cab_queue, vif->cab_queue,
 +                                  IWL_MAX_TID_COUNT, 0);
 +
+       if (mvmvif->bcast_sta.tfd_queue_msk & BIT(mvm->probe_queue)) {
+               iwl_mvm_disable_txq(mvm, mvm->probe_queue,
                                    vif->hw_queue[0], IWL_MAX_TID_COUNT,
                                    0);
-               mvmvif->bcast_sta.tfd_queue_msk &=
-                       ~BIT(IWL_MVM_DQA_AP_PROBE_RESP_QUEUE);
+               mvmvif->bcast_sta.tfd_queue_msk &= ~BIT(mvm->probe_queue);
        }
  
-       if (mvmvif->bcast_sta.tfd_queue_msk &
-           BIT(IWL_MVM_DQA_P2P_DEVICE_QUEUE)) {
-               iwl_mvm_disable_txq(mvm,
-                                   IWL_MVM_DQA_P2P_DEVICE_QUEUE,
+       if (mvmvif->bcast_sta.tfd_queue_msk & BIT(mvm->p2p_dev_queue)) {
+               iwl_mvm_disable_txq(mvm, mvm->p2p_dev_queue,
                                    vif->hw_queue[0], IWL_MAX_TID_COUNT,
                                    0);
-               mvmvif->bcast_sta.tfd_queue_msk &=
-                       ~BIT(IWL_MVM_DQA_P2P_DEVICE_QUEUE);
+               mvmvif->bcast_sta.tfd_queue_msk &= ~BIT(mvm->p2p_dev_queue);
        }
  }
  
index 1ba0a6f55503665d14b1c1e9a129e37503b9f33f,568b0793e84e82b4297dcf90f533c0225764547a..ffbbe7228f5d4ac06edf02a1731b1653330af3f6
@@@ -518,12 -517,11 +518,12 @@@ static int iwl_mvm_get_ctrl_vif_queue(s
                if (info->hw_queue == info->control.vif->cab_queue)
                        return info->hw_queue;
  
 -              WARN_ONCE(1, "fc=0x%02x", le16_to_cpu(fc));
 +              WARN_ONCE(info->control.vif->type != NL80211_IFTYPE_ADHOC,
 +                        "fc=0x%02x", le16_to_cpu(fc));
-               return IWL_MVM_DQA_AP_PROBE_RESP_QUEUE;
+               return mvm->probe_queue;
        case NL80211_IFTYPE_P2P_DEVICE:
                if (ieee80211_is_mgmt(fc))
-                       return IWL_MVM_DQA_P2P_DEVICE_QUEUE;
+                       return mvm->p2p_dev_queue;
                if (info->hw_queue == info->control.vif->cab_queue)
                        return info->hw_queue;