On some platforms, the root port for Intel XMM7360 WWAN supports D3cold. When the root port is put to D3cold by system suspend or runtime suspend, attempt to systems resume or runtime resume will freeze the laptop for a while, then it automatically shuts down. The root cause is unclear for now, as the Intel XMM7360 doesn't have a driver yet. So disable D3cold for XMM7360 as a workaround, until proper device driver is in place. Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=212419 Signed-off-by: Kai-Heng Feng <kai.heng.feng@xxxxxxxxxxxxx> --- drivers/pci/quirks.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/drivers/pci/quirks.c b/drivers/pci/quirks.c index 653660e3ba9e..8ca8153e4a19 100644 --- a/drivers/pci/quirks.c +++ b/drivers/pci/quirks.c @@ -5612,3 +5612,10 @@ static void apex_pci_fixup_class(struct pci_dev *pdev) } DECLARE_PCI_FIXUP_CLASS_HEADER(0x1ac1, 0x089a, PCI_CLASS_NOT_DEFINED, 8, apex_pci_fixup_class); + +static void pci_fixup_no_d3cold(struct pci_dev *pdev) +{ + pci_info(pdev, "disable D3cold\n"); + pci_d3cold_disable(pdev); +} +DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_INTEL, 0x7360, pci_fixup_no_d3cold); -- 2.30.2