mt76: mt76u: add mt76u_alloc_rx_queue utility routine
authorLorenzo Bianconi <lorenzo@kernel.org>
Wed, 15 Jan 2020 10:58:50 +0000 (11:58 +0100)
committerFelix Fietkau <nbd@nbd.name>
Fri, 14 Feb 2020 09:06:05 +0000 (10:06 +0100)
Introduce mt76u_alloc_rx_queue routine to allocate rx hw queue.
This is a preliminary patch to support new devices (e.g. mt7663u) that
rely on a hw queue for mcu messages

Co-developed-by: Sean Wang <sean.wang@mediatek.com>
Signed-off-by: Sean Wang <sean.wang@mediatek.com>
Signed-off-by: Lorenzo Bianconi <lorenzo@kernel.org>
Signed-off-by: Felix Fietkau <nbd@nbd.name>
drivers/net/wireless/mediatek/mt76/usb.c

index dde1ee3..e111289 100644 (file)
@@ -603,9 +603,10 @@ mt76u_submit_rx_buffers(struct mt76_dev *dev, enum mt76_rxq_id qid)
        return err;
 }
 
-static int mt76u_alloc_rx(struct mt76_dev *dev)
+static int
+mt76u_alloc_rx_queue(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];
        int i, err;
 
        spin_lock_init(&q->lock);
@@ -624,7 +625,7 @@ static int mt76u_alloc_rx(struct mt76_dev *dev)
                        return err;
        }
 
-       return mt76u_submit_rx_buffers(dev, MT_RXQ_MAIN);
+       return mt76u_submit_rx_buffers(dev, qid);
 }
 
 static void
@@ -966,7 +967,7 @@ int mt76u_alloc_queues(struct mt76_dev *dev)
 {
        int err;
 
-       err = mt76u_alloc_rx(dev);
+       err = mt76u_alloc_rx_queue(dev, MT_RXQ_MAIN);
        if (err < 0)
                return err;