rcu_read_unlock();
 }
 
-static int mt76u_submit_rx_buffers(struct mt76_dev *dev)
+static int
+mt76u_submit_rx_buffers(struct mt76_dev *dev, enum mt76_rxq_id qid)
 {
-       struct mt76_queue *q = &dev->q_rx[MT_RXQ_MAIN];
+       struct mt76_queue *q = &dev->q_rx[qid];
        unsigned long flags;
        int i, err = 0;
 
        spin_lock_irqsave(&q->lock, flags);
        for (i = 0; i < q->ndesc; i++) {
-               err = mt76u_submit_rx_buf(dev, MT_RXQ_MAIN, q->entry[i].urb);
+               err = mt76u_submit_rx_buf(dev, qid, q->entry[i].urb);
                if (err < 0)
                        break;
        }
                        return err;
        }
 
-       return mt76u_submit_rx_buffers(dev);
+       return mt76u_submit_rx_buffers(dev, MT_RXQ_MAIN);
 }
 
 static void mt76u_free_rx(struct mt76_dev *dev)
        for (i = 0; i < q->ndesc; i++)
                usb_unpoison_urb(q->entry[i].urb);
 
-       return mt76u_submit_rx_buffers(dev);
+       return mt76u_submit_rx_buffers(dev, MT_RXQ_MAIN);
 }
 EXPORT_SYMBOL_GPL(mt76u_resume_rx);