[PATCH v9 0/1] Add quirks to proceed PME handshake in DWC PM

Richard Zhu hongxing.zhu at nxp.com
Wed Jan 14 00:32:59 PST 2026


It's harmless to let dw_pcie_suspend_noirq() proceed suspend after the
PME_Turn_Off is sent out, whatever the LTSSM state is in L2 or L3 after
a recommended 10ms max wait refer to PCIe r6.0, sec 5.3.3.2.1 PME
Synchronization.

The LTSSM states of i.MX6QP PCIe is inaccessible after the PME_Turn_Off
is kicked off. To handle this case, don't poll L2 state and add one max
10ms delay if the skip_l23_wait flag is true in suspend.

Main changes in v9:
- Based on v4 patch-set[1] and the pcie/controller/dwc of the following pci git.
git://git.kernel.org/pub/scm/linux/kernel/git/pci/pci.git
- Drop 2-2 of v8 patch-set.
- Refine the first patch of v8 patch-set refer to Mani's suggestions.
[1]:https://lore.kernel.org/linux-pci/20260107-pci-dwc-suspend-rework-v4-0-9b5f3c72df0a@oss.qualcomm.com/#r
v8:https://lore.kernel.org/all/20260107024553.3307205-1-hongxing.zhu@nxp.com/

Main changes in v8:
- Rebase to v6.19-rc1.
v7:https://lore.kernel.org/all/20251024025627.787833-1-hongxing.zhu@nxp.com/

Main changes in v7:
- Rebase to v6.18-rc1.
- Drop the first patch of v6, since it's not necessary part of this topic, 
  and it seems that more evaluations and discussions are required.
v6:https://lore.kernel.org/imx/20250924072324.3046687-1-hongxing.zhu@nxp.com/

Main changes in v6:
Refer to Mani' comments.
- Update the commit message of first patch.
- Squash the 6-3 and 6-4 into 6-2 of v5 patch-set.
- Add the Fixes tag, and CC stable list.
v5:https://lore.kernel.org/imx/20250902080151.3748965-1-hongxing.zhu@nxp.com/

Main changes in v5:
- Fix build warning caused by 6-1 patch.
v4:https://lore.kernel.org/imx/20250822084341.3160738-1-hongxing.zhu@nxp.com/

Main changes in v4:
- Add one patch[1/6] to remove the L1SS check during L2 entry.
- Update the code comments of 2/6 patch and commit description of 6/6 patch.
- Add background to 5/6 to describe why skip PME_Turn_off message when no
endpoint device is connected.
v3:https://lore.kernel.org/imx/20250818073205.1412507-1-hongxing.zhu@nxp.com/

Main changes in v3:
- Adjust the patch sequence to avoid the build break.
- Update the commit message.
v2:https://lore.kernel.org/imx/20250618024116.3704579-1-hongxing.zhu@nxp.com/

Main changes in v2:
Add the following two patches.
- Skip PME_Turn_Off message if there is no endpoint connected.
- Don't return error when wait for link up.
v1:https://lore.kernel.org/imx/20250408065221.1941928-1-hongxing.zhu@nxp.com/

[PATCH v9] PCI: dwc: Don't poll L2 if skip_l23_wait is true

drivers/pci/controller/dwc/pci-imx6.c             |  5 +++++
drivers/pci/controller/dwc/pcie-designware-host.c | 15 +++++++++++++++
drivers/pci/controller/dwc/pcie-designware.h      |  1 +
3 files changed, 21 insertions(+)





More information about the linux-arm-kernel mailing list