mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
* [PULL] PCI: meson: Fix PERST# timing by asserting reset before LTSSM enable
@ 2026-06-14  5:00 gowtham
  0 siblings, 0 replies; 2+ messages in thread
From: gowtham @ 2026-06-14  5:00 UTC (permalink / raw)
  To: linux-kernel, linux-pci, yue.wang

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(-)

^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: [PULL] PCI: meson: Fix PERST# timing by asserting reset before LTSSM enable
       [not found] <20260614095626.7afb7c04@slick.ferryfair.com>
@ 2026-07-01  6:31 ` Manivannan Sadhasivam
  0 siblings, 0 replies; 2+ messages in thread
From: Manivannan Sadhasivam @ 2026-07-01  6:31 UTC (permalink / raw)
  To: gowtham
  Cc: yue.wang, lpieralisi, kwilczynski, robh, bhelgaas,
	neil.armstrong, khilman, jbrunet, martin.blumenstingl, linux-pci,
	linux-amlogic, linux-arm-kernel, linux-kernel

On Sun, Jun 14, 2026 at 09:56:26AM +0530, gowtham wrote:
> 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)
> 

Sorry, we don't pull patches from random trees. Please submit the patches to
linux-pci for review.

- Mani

-- 
மணிவண்ணன் சதாசிவம்

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2026-07-01  6:31 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2026-06-14  5:00 [PULL] PCI: meson: Fix PERST# timing by asserting reset before LTSSM enable gowtham
     [not found] <20260614095626.7afb7c04@slick.ferryfair.com>
2026-07-01  6:31 ` Manivannan Sadhasivam

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®