summaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless
diff options
context:
space:
mode:
authorRyder Lee <ryder.lee@mediatek.com>2021-04-13 16:00:06 +0800
committerFelix Fietkau <nbd@nbd.name>2021-04-21 11:42:20 +0200
commit91577ccae6461506a06889849dd944d9bdec09dd (patch)
tree1b0ea66c3652ed29a7a18c878b305b4fedc8650a /drivers/net/wireless
parent6362dd16596e8a694f895089726fac103b7f47ef (diff)
downloadlinux-stable-91577ccae6461506a06889849dd944d9bdec09dd.tar.gz
linux-stable-91577ccae6461506a06889849dd944d9bdec09dd.tar.bz2
linux-stable-91577ccae6461506a06889849dd944d9bdec09dd.zip
mt76: mt7615: only free skbs after mt7615_dma_reset() when reset happens
In mt7615_mac_reset_work(), make sure freeing skbs after mt7615_dma_reset(). Signed-off-by: Ryder Lee <ryder.lee@mediatek.com> Signed-off-by: Felix Fietkau <nbd@nbd.name>
Diffstat (limited to 'drivers/net/wireless')
-rw-r--r--drivers/net/wireless/mediatek/mt76/mt7615/pci_mac.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/drivers/net/wireless/mediatek/mt76/mt7615/pci_mac.c b/drivers/net/wireless/mediatek/mt76/mt7615/pci_mac.c
index 1b206ccdadf2..9ac4bdabc0ef 100644
--- a/drivers/net/wireless/mediatek/mt76/mt7615/pci_mac.c
+++ b/drivers/net/wireless/mediatek/mt76/mt7615/pci_mac.c
@@ -303,12 +303,12 @@ void mt7615_mac_reset_work(struct work_struct *work)
mt7615_hif_int_event_trigger(dev, MT_MCU_INT_EVENT_PDMA_STOPPED);
- mt7615_tx_token_put(dev);
- idr_init(&dev->token);
-
if (mt7615_wait_reset_state(dev, MT_MCU_CMD_RESET_DONE)) {
mt7615_dma_reset(dev);
+ mt7615_tx_token_put(dev);
+ idr_init(&dev->token);
+
mt76_wr(dev, MT_WPDMA_MEM_RNG_ERR, 0);
mt7615_hif_int_event_trigger(dev, MT_MCU_INT_EVENT_PDMA_INIT);