[PATCH v2 0/2] PCI: qcom: Implement shutdown() to avoid SMMU/NoC errors on reboot
Krishna Chaitanya Chundru <[email protected]>
| Newsgroups | org.kernel.vger.linux-pci,org.kernel.vger.linux-arm-msm,org.kernel.vger.linux-kernel |
|---|---|
| Message-ID | <[email protected]> |
During system shutdown/reboot, power/clocks to the PCIe controller get removed regardless of link state. If the link is still up when that happens, it can trigger SMMU or NoC errors. This series adds a shutdown() callback to the Qualcomm PCIe host driver that forces the link into L2/D3cold before shutdown proceeds, reusing the existing suspend_noirq() path. Patch 1 makes dw_pcie_suspend_noirq() skip the D3cold capability check during shutdown/reboot, since that check can fail and leave the link up if any endpoint hasn't suspended yet. Patch 2 adds qcom_pcie_shutdown() and wires it up as .shutdown. Signed-off-by: Krishna Chaitanya Chundru <[email protected]> --- Changes in v2: 1) don't remove the endpoint pci dev's only keep link in D3cold. Link to v1: https://lore.kernel.org/all/[email protected]/ --- Krishna Chaitanya Chundru (1): PCI: dwc: Force L2 link entry on shutdown/reboot without D3cold check Manivannan Sadhasivam (1): PCI: qcom: Implement shutdown() callback drivers/pci/controller/dwc/pcie-designware-host.c | 18 ++++++++++++++++-- drivers/pci/controller/dwc/pcie-qcom.c | 10 ++++++++++ 2 files changed, 26 insertions(+), 2 deletions(-) --- base-commit: c1366b72ad4e87be60b57b74635a3a0bc58d2b0b change-id: 20260822-shutdown-fe8139dff2b7 Best regards, -- Krishna Chaitanya Chundru <[email protected]>