wifi: mt76: mt7925: skip DMA re-init selectively

Add a flag to skip it on chips that don't need it.

Signed-off-by: Jeff Hsu <[email protected]>
Link: https://patch.msgid.link/[email protected]
Signed-off-by: Felix Fietkau <[email protected]>
This commit is contained in:
Jeff Hsu
2026-07-30 10:13:51 +02:00
committed by Felix Fietkau
parent 9be8ee34e8
commit cd26ff6646
3 changed files with 7 additions and 0 deletions
+3
View File
@@ -650,6 +650,9 @@ static int mt7925_pci_probe(struct pci_dev *pdev,
if (!mt7925_disable_aspm && mt76_pci_aspm_supported(pdev)) if (!mt7925_disable_aspm && mt76_pci_aspm_supported(pdev))
dev->aspm_supported = true; dev->aspm_supported = true;
if (is_mt7928(&dev->mt76))
dev->skip_wpdma_reinit = true;
ret = __mt792x_mcu_fw_pmctrl(dev); ret = __mt792x_mcu_fw_pmctrl(dev);
if (ret) if (ret)
goto err_free_dev; goto err_free_dev;
+1
View File
@@ -273,6 +273,7 @@ struct mt792x_dev {
bool hif_idle:1; bool hif_idle:1;
bool hif_resumed:1; bool hif_resumed:1;
bool regd_change:1; bool regd_change:1;
bool skip_wpdma_reinit:1;
wait_queue_head_t wait; wait_queue_head_t wait;
struct work_struct init_work; struct work_struct init_work;
+3
View File
@@ -418,6 +418,9 @@ int mt792x_wpdma_reinit_cond(struct mt792x_dev *dev)
struct mt76_connac_pm *pm = &dev->pm; struct mt76_connac_pm *pm = &dev->pm;
int err; int err;
if (dev->skip_wpdma_reinit)
return 0;
/* check if the wpdma must be reinitialized */ /* check if the wpdma must be reinitialized */
if (mt792x_dma_need_reinit(dev)) { if (mt792x_dma_need_reinit(dev)) {
/* disable interrutpts */ /* disable interrutpts */