PCI/ASPM: Restore parent state to parent, child state to child
BugLink: https://bugs.launchpad.net/bugs/2071889 There's a typo that makes parent device uses child LNKCTL value and vice versa. This causes Micron NVMe to trigger a reboot upon system resume. Correct the typo to fix the issue. Fixes: 64dbb2d70744 ("PCI/ASPM: Disable L1 before configuring L1 Substates") Link: https://lore.kernel.org/r/20240506051602.1990743-1-kai.heng.feng@canonical.com Signed-off-by: Kai-Heng Feng <kai.heng.feng@canonical.com> [bhelgaas: update subject] Signed-off-by: Bjorn Helgaas <bhelgaas@google.com> Reviewed-by: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com> (cherry picked from commit f3d049b35b01fff656d720606fcbab0b819f26d1) Signed-off-by: Chia-Lin Kao (AceLan) <acelan.kao@canonical.com> Acked-by: Guoqing Jiang <guoqing.jiang@canonical.com> Acked-by: Andrei Gherzan <andrei.gherzan@canonical.com> Signed-off-by: Stefan Bader <stefan.bader@canonical.com>
This commit is contained in:
committed by
Stefan Bader
parent
77ed1ee0e7
commit
ffee01f79d
@@ -177,8 +177,8 @@ void pci_restore_aspm_l1ss_state(struct pci_dev *pdev)
|
||||
/* Restore L0s/L1 if they were enabled */
|
||||
if (FIELD_GET(PCI_EXP_LNKCTL_ASPMC, clnkctl) ||
|
||||
FIELD_GET(PCI_EXP_LNKCTL_ASPMC, plnkctl)) {
|
||||
pcie_capability_write_word(parent, PCI_EXP_LNKCTL, clnkctl);
|
||||
pcie_capability_write_word(pdev, PCI_EXP_LNKCTL, plnkctl);
|
||||
pcie_capability_write_word(parent, PCI_EXP_LNKCTL, plnkctl);
|
||||
pcie_capability_write_word(pdev, PCI_EXP_LNKCTL, clnkctl);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user