Re: [PATCH v1] PCI: imx6: Move clock enable after core reset assertion
Francesco Dolcini <[email protected]>
| Newsgroups | dev.linux.lists.imx,org.infradead.lists.linux-arm-kernel,org.kernel.vger.linux-kernel,org.kernel.vger.linux-pci,org.kernel.vger.stable |
|---|---|
| Message-ID | <20260813083912.GB19687@francesco-nb> |
On Thu, Aug 13, 2026 at 04:29:00PM +0800, [email protected] wrote: > From: Richard Zhu <[email protected]> > > Commit 610fa91d9863 ("PCI: imx6: Assert PERST# before enabling regulators") > inadvertently moved clock enablement before core reset assertion, breaking > PCI device initialization on i.MX6Q Apalis platforms when > ASM1061/ASM1062 is connected. > > Logs: > root@apalis-imx6-11486042:~# dmesg | grep pcie > imx6q-pcie 1ffc000.pcie: host bridge /soc/pcie@1ffc000 ranges: > imx6q-pcie 1ffc000.pcie: IO 0x0001f80000..0x0001f8ffff -> 0x0000000000 > imx6q-pcie 1ffc000.pcie: MEM 0x0001000000..0x0001efffff -> 0x0001000000 > imx6q-pcie 1ffc000.pcie: config reg[1] 0x01f00000 == cpu 0x01f00000 > imx6q-pcie 1ffc000.pcie: iATU: unroll F, 4 ob, 4 ib, align 64K, limit 4G > imx6q-pcie 1ffc000.pcie: Link: Only Gen1 is enabled > imx6q-pcie 1ffc000.pcie: Link failed to come up. LTSSM: POLL_CONFIG > imx6q-pcie 1ffc000.pcie: probe with driver imx6q-pcie failed with error -110 > > To fix this regression, restore the original sequence where clocks are > enabled after asserting core reset and configuring the controller type. > > Fixes: 610fa91d9863 ("PCI: imx6: Assert PERST# before enabling regulators") > Signed-off-by: Richard Zhu <[email protected]> > Reported-by: Leonardo Costa <[email protected]> > Closes: https://lore.kernel.org/all/bl7i3obu2clzsgeoct2a4mtfhv6typcjdqmgneropf3hpgwve6@n2m5uhlduw57/T/#u > Reported-by: Franz Schnyder <[email protected]> > Closes: https://lore.kernel.org/all/t65y5d54axtksbfs7r4olcefqhwm6m4dz3njgnrnf7fcotj74i@o7avoznlafbj/ > Cc: [email protected] # 7.1+ 7.2+, 7.1 does not have the broken commit minor: it is not 100% clear if the issue is specific to the ASM1061/ASM1062 device or on the specific power-up sequence (reset vs cold-power-on). Francesco