summaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless/mediatek/mt76/dma.c
diff options
context:
space:
mode:
authorFelix Fietkau <nbd@nbd.name>2020-03-24 11:57:43 +0100
committerFelix Fietkau <nbd@nbd.name>2020-09-24 18:10:16 +0200
commit2d68104742a90f035ee8ceaddf322f6e2da32f70 (patch)
tree79d9b7f393cf0170411273b0c64307029c7993a8 /drivers/net/wireless/mediatek/mt76/dma.c
parentc32011bbde738f36dcffbb0e3333e29f7857fd09 (diff)
downloadlinux-stable-2d68104742a90f035ee8ceaddf322f6e2da32f70.tar.gz
linux-stable-2d68104742a90f035ee8ceaddf322f6e2da32f70.tar.bz2
linux-stable-2d68104742a90f035ee8ceaddf322f6e2da32f70.zip
mt76: add memory barrier to DMA queue kick
Ensure that descriptor memory has been fully written before letting the hardware read it 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.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/net/wireless/mediatek/mt76/dma.c b/drivers/net/wireless/mediatek/mt76/dma.c
index 7545b552db25..24ff21eedbd0 100644
--- a/drivers/net/wireless/mediatek/mt76/dma.c
+++ b/drivers/net/wireless/mediatek/mt76/dma.c
@@ -143,6 +143,7 @@ mt76_dma_sync_idx(struct mt76_dev *dev, struct mt76_queue *q)
static void
mt76_dma_kick_queue(struct mt76_dev *dev, struct mt76_queue *q)
{
+ wmb();
writel(q->head, &q->regs->cpu_idx);
}