[PULL] PCI: meson: Fix PERST# timing by asserting reset before LTSSM enable

gowtham <[email protected]>
Newsgroups org.infradead.lists.linux-amlogic,org.infradead.lists.linux-arm-kernel
Organization FerryFair
Message-ID <[email protected]>
The following changes since commit
bb532bfaf7919c7c98caab81864e9ce2646e11e3:

  Linux 7.0.11 (2026-06-01 17:54:55 +0200)

are available in the Git repository at:

  https://github.com/GowthamKudupudi/linux.git
  tags/meson-pcie-warm-reset-linux-7.0.y

for you to fetch changes up to 852811b11795ee389ea6a953ed0db69b76722469:

  PCI: meson: Fix PERST# timing by asserting reset before LTSSM enable
  (2026-06-14 09:41:01 +0530)

----------------------------------------------------------------
PCI: meson: Fix PERST# timing by asserting reset before LTSSM enable

On warm reboot, the PCIe controller's LTSSM starts link training
immediately if PERST# is already deasserted from the previous boot.
The driver then pulses PERST# for only 500us, which is too short to
properly reset the endpoint device that has already started training.

Fix by moving the PERST# assert/deassert pulse BEFORE enabling LTSSM,
so the endpoint gets a clean reset cycle before link training begins.

This was found on Amlogic G12B (A311D) with NVMe on an M.2 slot.
Cold boot worked because POR held PERST# low; warm reboot did not.
The fix was confirmed on a Banana Pi CM4 with Waveshare IO base board.

----------------------------------------------------------------
Gowtham Kudupudi (1):
      PCI: meson: Fix PERST# timing by asserting reset before LTSSM
enable

 drivers/pci/controller/dwc/pci-meson.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

_______________________________________________
linux-amlogic mailing list
[email protected]
http://lists.infradead.org/mailman/listinfo/linux-amlogic
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.