summaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless/mediatek/mt76/dma.c
diff options
context:
space:
mode:
authorFelix Fietkau <nbd@nbd.name>2019-03-13 00:51:36 +0100
committerFelix Fietkau <nbd@nbd.name>2019-05-01 13:03:58 +0200
commit90fdc1717b1862eb3d506733f3b3e5217bc0de20 (patch)
treeaa5d03b1e40813bd7f77fd42380ad204657e05ce /drivers/net/wireless/mediatek/mt76/dma.c
parentd908d4ec4dd182dc2e766a4d2129e6b3c274953d (diff)
downloadlinux-90fdc1717b1862eb3d506733f3b3e5217bc0de20.tar.bz2
mt76: use mac80211 txq scheduling
Performance improvement and preparation for adding airtime fairness support Signed-off-by: Felix Fietkau <nbd@nbd.name>
Diffstat (limited to 'drivers/net/wireless/mediatek/mt76/dma.c')
-rw-r--r--drivers/net/wireless/mediatek/mt76/dma.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/drivers/net/wireless/mediatek/mt76/dma.c b/drivers/net/wireless/mediatek/mt76/dma.c
index cdeca22bf3a7..7145b75b6438 100644
--- a/drivers/net/wireless/mediatek/mt76/dma.c
+++ b/drivers/net/wireless/mediatek/mt76/dma.c
@@ -184,9 +184,7 @@ mt76_dma_tx_cleanup(struct mt76_dev *dev, enum mt76_txq_id qid, bool flush)
last = readl(&q->regs->dma_idx);
}
- if (!flush)
- mt76_txq_schedule(dev, sq);
- else
+ if (flush)
mt76_dma_sync_idx(dev, q);
wake = wake && q->stopped &&
@@ -199,6 +197,8 @@ mt76_dma_tx_cleanup(struct mt76_dev *dev, enum mt76_txq_id qid, bool flush)
spin_unlock_bh(&q->lock);
+ if (!flush)
+ mt76_txq_schedule(dev, qid);
if (wake)
ieee80211_wake_queue(dev->hw, qid);
}