mvm->queue_to_mac80211[i] = i;
                else
                        mvm->queue_to_mac80211[i] = IWL_INVALID_MAC80211_QUEUE;
-               atomic_set(&mvm->queue_stop_count[i], 0);
        }
 
-       mvm->transport_queue_stop = 0;
+       for (i = 0; i < IEEE80211_MAX_QUEUES; i++)
+               atomic_set(&mvm->mac80211_queue_stop_count[i], 0);
 
        mvm->ucode_loaded = true;
 
 
 
        struct mvm_statistics_rx rx_stats;
 
-       unsigned long transport_queue_stop;
        u8 queue_to_mac80211[IWL_MAX_HW_QUEUES];
-       atomic_t queue_stop_count[IWL_MAX_HW_QUEUES];
+       atomic_t mac80211_queue_stop_count[IEEE80211_MAX_QUEUES];
 
        const char *nvm_file_name;
        struct iwl_nvm_data *nvm_data;
 
        if (WARN_ON_ONCE(mq == IWL_INVALID_MAC80211_QUEUE))
                return;
 
-       if (atomic_inc_return(&mvm->queue_stop_count[mq]) > 1) {
+       if (atomic_inc_return(&mvm->mac80211_queue_stop_count[mq]) > 1) {
                IWL_DEBUG_TX_QUEUES(mvm,
                                    "queue %d (mac80211 %d) already stopped\n",
                                    queue, mq);
                return;
        }
 
-       set_bit(mq, &mvm->transport_queue_stop);
        ieee80211_stop_queue(mvm->hw, mq);
 }
 
        if (WARN_ON_ONCE(mq == IWL_INVALID_MAC80211_QUEUE))
                return;
 
-       if (atomic_dec_return(&mvm->queue_stop_count[mq]) > 0) {
+       if (atomic_dec_return(&mvm->mac80211_queue_stop_count[mq]) > 0) {
                IWL_DEBUG_TX_QUEUES(mvm,
-                                   "queue %d (mac80211 %d) already awake\n",
+                                   "queue %d (mac80211 %d) still stopped\n",
                                    queue, mq);
                return;
        }
 
-       clear_bit(mq, &mvm->transport_queue_stop);
-
        ieee80211_wake_queue(mvm->hw, mq);
 }