mt76: mt7615: fix entering driver-own state on mt7663
Fixes hardware wakeup issues Signed-off-by: Felix Fietkau <nbd@nbd.name>
This commit is contained in:
parent
453873637b
commit
5c7d374444
@ -292,12 +292,20 @@ static int mt7615_mcu_drv_pmctrl(struct mt7615_dev *dev)
|
||||
u32 addr;
|
||||
int err;
|
||||
|
||||
addr = is_mt7663(mdev) ? MT_PCIE_DOORBELL_PUSH : MT_CFG_LPCR_HOST;
|
||||
if (is_mt7663(mdev)) {
|
||||
/* Clear firmware own via N9 eint */
|
||||
mt76_wr(dev, MT_PCIE_DOORBELL_PUSH, MT_CFG_LPCR_HOST_DRV_OWN);
|
||||
mt76_poll(dev, MT_CONN_ON_MISC, MT_CFG_LPCR_HOST_FW_OWN, 0, 3000);
|
||||
|
||||
addr = MT_CONN_HIF_ON_LPCTL;
|
||||
} else {
|
||||
addr = MT_CFG_LPCR_HOST;
|
||||
}
|
||||
|
||||
mt76_wr(dev, addr, MT_CFG_LPCR_HOST_DRV_OWN);
|
||||
|
||||
mt7622_trigger_hif_int(dev, true);
|
||||
|
||||
addr = is_mt7663(mdev) ? MT_CONN_HIF_ON_LPCTL : MT_CFG_LPCR_HOST;
|
||||
err = !mt76_poll_msec(dev, addr, MT_CFG_LPCR_HOST_FW_OWN, 0, 3000);
|
||||
|
||||
mt7622_trigger_hif_int(dev, false);
|
||||
|
Loading…
Reference in New Issue
Block a user