diff --git a/mt7603/dma.c b/mt7603/dma.c index 9c54bea9..75ec077d 100644 --- a/mt7603/dma.c +++ b/mt7603/dma.c @@ -197,6 +197,7 @@ int mt7603_dma_init(struct mt7603_dev *dev) MT_WPDMA_GLO_CFG_TX_WRITEBACK_DONE); mt76_wr(dev, MT_WPDMA_RST_IDX, ~0); + mt7603_pse_client_reset(dev); for (i = 0; i < ARRAY_SIZE(wmm_queue_map); i++) { ret = mt7603_init_tx_queue(dev, &dev->mt76.q_tx[i], diff --git a/mt7603/mac.c b/mt7603/mac.c index 31ef37bc..d1ea0e32 100644 --- a/mt7603/mac.c +++ b/mt7603/mac.c @@ -1263,7 +1263,7 @@ void mt7603_mac_stop(struct mt7603_dev *dev) mt76_clear(dev, MT_WF_ARB_RQCR, MT_WF_ARB_RQCR_RX_START); } -static void mt7603_pse_client_reset(struct mt7603_dev *dev) +void mt7603_pse_client_reset(struct mt7603_dev *dev) { u32 addr; diff --git a/mt7603/mt7603.h b/mt7603/mt7603.h index 691bc58d..b9973da0 100644 --- a/mt7603/mt7603.h +++ b/mt7603/mt7603.h @@ -221,6 +221,8 @@ void mt7603_mac_rx_ba_reset(struct mt7603_dev *dev, void *addr, u8 tid); void mt7603_mac_tx_ba_reset(struct mt7603_dev *dev, int wcid, int tid, int ssn, int ba_size); +void mt7603_pse_client_reset(struct mt7603_dev *dev); + int mt7603_mcu_set_channel(struct mt7603_dev *dev); int mt7603_mcu_set_eeprom(struct mt7603_dev *dev); void mt7603_mcu_exit(struct mt7603_dev *dev);