static int
 mt76_txq_send_burst(struct mt76_dev *dev, struct mt76_sw_queue *sq,
-                   struct mt76_txq *mtxq, bool *empty)
+                   struct mt76_txq *mtxq)
 {
        struct ieee80211_txq *txq = mtxq_to_txq(mtxq);
        enum mt76_txq_id qid = mt76_txq_get_qid(txq);
        bool probe;
        int idx;
 
-       if (test_bit(MT_WCID_FLAG_PS, &wcid->flags)) {
-               *empty = true;
+       if (test_bit(MT_WCID_FLAG_PS, &wcid->flags))
                return 0;
-       }
 
        skb = mt76_txq_dequeue(dev, mtxq, false);
-       if (!skb) {
-               *empty = true;
+       if (!skb)
                return 0;
-       }
 
        info = IEEE80211_SKB_CB(skb);
        if (!(wcid->tx_info & MT_WCID_TX_INFO_SET))
                        return -EBUSY;
 
                skb = mt76_txq_dequeue(dev, mtxq, false);
-               if (!skb) {
-                       *empty = true;
+               if (!skb)
                        break;
-               }
 
                info = IEEE80211_SKB_CB(skb);
                cur_ampdu = info->flags & IEEE80211_TX_CTL_AMPDU;
 
        spin_lock_bh(&hwq->lock);
        while (1) {
-               bool empty = false;
-
                if (sq->swq_queued >= 4)
                        break;
 
                        spin_lock_bh(&hwq->lock);
                }
 
-               ret += mt76_txq_send_burst(dev, sq, mtxq, &empty);
-               if (skb_queue_empty(&mtxq->retry_q))
-                       empty = true;
-               ieee80211_return_txq(dev->hw, txq, !empty);
+               ret += mt76_txq_send_burst(dev, sq, mtxq);
+               ieee80211_return_txq(dev->hw, txq,
+                                    !skb_queue_empty(&mtxq->retry_q));
        }
        spin_unlock_bh(&hwq->lock);