Re: mt7612 suspend/resume issue
From: Oleksandr Natalenko
Date: Mon Jun 22 2020 - 11:47:30 EST
On Mon, Jun 22, 2020 at 4:53 PM Lorenzo Bianconi
<lorenzo.bianconi@xxxxxxxxxx> wrote:
> > On Sun, Jun 21, 2020 at 10:54 PM Lorenzo Bianconi <lorenzo@xxxxxxxxxx> wrote:
> > > > > +static int __maybe_unused
> > > > > +mt76x2e_suspend(struct pci_dev *pdev, pm_message_t state)
> > > > > +{
> > > > > + struct mt76_dev *mdev = pci_get_drvdata(pdev);
> > > > > + struct mt76x02_dev *dev = container_of(mdev, struct mt76x02_dev, mt76);
> > > > > + int i, err;
> > >
> > > can you please double-check what is the PCI state requested during suspend?
> >
> > Do you mean ACPI S3 (this is the state the system enters)? If not,
> > what should I check and where?
>
> yes, right. Just for debugging, can you please force the card in PCI_D0 during the
> suspend?
Do you want me to do this:
diff --git a/drivers/net/wireless/mediatek/mt76/mt76x2/pci.c
b/drivers/net/wireless/mediatek/mt76/mt76x2/pci.c
index 5543e242fb9b..e558342cce03 100644
--- a/drivers/net/wireless/mediatek/mt76/mt76x2/pci.c
+++ b/drivers/net/wireless/mediatek/mt76/mt76x2/pci.c
@@ -119,9 +119,8 @@ mt76x2e_suspend(struct pci_dev *pdev, pm_message_t state)
mt76x02_dma_reset(dev);
- pci_enable_wake(pdev, pci_choose_state(pdev, state), true);
pci_save_state(pdev);
- err = pci_set_power_state(pdev, pci_choose_state(pdev, state));
+ err = pci_set_power_state(pdev, PCI_D0);
if (err)
goto restore;
?
--
Best regards,
Oleksandr Natalenko (post-factum)
Principal Software Maintenance Engineer