Re: [PATCH] PCI: meson: Fix PERST# timing by asserting reset before LTSSM enable
| Newsgroups | org.infradead.lists.linux-amlogic,org.kernel.vger.linux-pci |
|---|---|
| Message-ID | <[email protected]> |
> 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. > > Signed-off-by: Gowtham Kudupudi <[email protected]> Sashiko has reviewed this patch and found no issues. It looks great! -- Sashiko AI review · https://sashiko.dev/#/patchset/[email protected]?part=1 _______________________________________________ linux-amlogic mailing list [email protected] http://lists.infradead.org/mailman/listinfo/linux-amlogic