diff options
| author | Lorenzo Bianconi <[email protected]> | 2021-03-07 19:20:46 +0100 |
|---|---|---|
| committer | Felix Fietkau <[email protected]> | 2021-04-12 00:01:25 +0200 |
| commit | acf337c33de55dbeb25a8c34fa2051d42d77aecc (patch) | |
| tree | 874f9966f501dc10f959fe664b2157407766b6ad /drivers/net/wireless/mediatek/mt76/mcu.c | |
| parent | a2a6cd54eec4649c7cefd00ddb58f55a98c6d951 (diff) | |
mt76: introduce mcu_reset function pointer in mt76_mcu_ops structure
Introduce mcu_reset function pointer in mt76_mcu_ops structure in order
to run hw related reset function for the mcu running on the chipset.
This is a preliminary patch to introduce chip reset for mt7921 devices.
Co-developed-by: Sean Wang <[email protected]>
Signed-off-by: Sean Wang <[email protected]>
Signed-off-by: Lorenzo Bianconi <[email protected]>
Signed-off-by: Felix Fietkau <[email protected]>
Diffstat (limited to 'drivers/net/wireless/mediatek/mt76/mcu.c')
| -rw-r--r-- | drivers/net/wireless/mediatek/mt76/mcu.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/drivers/net/wireless/mediatek/mt76/mcu.c b/drivers/net/wireless/mediatek/mt76/mcu.c index d3a5e2c4f12a..70624cd07449 100644 --- a/drivers/net/wireless/mediatek/mt76/mcu.c +++ b/drivers/net/wireless/mediatek/mt76/mcu.c @@ -99,6 +99,10 @@ int mt76_mcu_skb_send_and_get_msg(struct mt76_dev *dev, struct sk_buff *skb, dev_kfree_skb(skb); } while (ret == -EAGAIN); + /* notify driver code to reset the mcu */ + if (ret == -ETIMEDOUT && dev->mcu_ops->mcu_reset) + dev->mcu_ops->mcu_reset(dev); + out: mutex_unlock(&dev->mcu.mutex); |