[REGRESSION] mainline/master: PCI link creation fails on Apalis iMX6
Bjorn Helgaas
helgaas at kernel.org
Tue Aug 11 14:49:00 PDT 2026
[+cc Sherry]
On Mon, Aug 10, 2026 at 02:54:45PM -0300, Leonardo Costa wrote:
> Hello,
>
> We are seeing a regression on Apalis iMX6 where connected PCI device
> links fail to come up at initialization, as shown below. The issue is
> not on the devices' physical connection, as they worked properly on v7.1
> and are working on other stable kernel versions.
>
> [ 0.154243] imx6q-pcie 1ffc000.pcie: host bridge /soc/pcie at 1ffc000 ranges:
> [ 0.154400] imx6q-pcie 1ffc000.pcie: IO 0x0001f80000..0x0001f8ffff -> 0x0000000000
> [ 0.154439] imx6q-pcie 1ffc000.pcie: MEM 0x0001000000..0x0001efffff -> 0x0001000000
> [ 0.154553] imx6q-pcie 1ffc000.pcie: config reg[1] 0x01f00000 == cpu 0x01f00000
> [ 0.356072] imx6q-pcie 1ffc000.pcie: iATU: unroll F, 4 ob, 4 ib, align 64K, limit 4G
> [ 0.356181] imx6q-pcie 1ffc000.pcie: Link: Only Gen1 is enabled
> [ 1.364757] imx6q-pcie 1ffc000.pcie: Link failed to come up. LTSSM: POLL_CONFIG
> [ 1.365056] imx6q-pcie 1ffc000.pcie: probe with driver imx6q-pcie failed with error -110
>
> Complete logs: https://paste.debian.net/hidden/f08cdf68
>
> This may have been caused by commit [1], which was introduced to solve
> an issue where the Apalis iMX6 module wasn't booting, and this second
> regression went unnoticed since then.
>
> Is it possible for all PCI changes to be reverted back to how they were
> in v7.1 before the next release?
It's *possible*, but it's tight and it would be a lot to revert. I
think all these have been added since v7.1:
aad953fb4eed ("PCI: imx6: Fix IMX6SX_GPR12_PCIE_TEST_POWERDOWN handling")
610fa91d9863 ("PCI: imx6: Assert PERST# before enabling regulators")
250eea5c06f5 ("PCI: imx6: Parse 'reset-gpios' in Root Port nodes")
0c26b1c34d12 ("PCI: imx6: Configure REF_USE_PAD before PHY reset for i.MX95")
9dda3f83ba67 ("PCI: imx6: Assert ref_clk_en after reference clock stabilizes on i.MX95")
85c1fcfa740d ("PCI: imx6: Integrate new pwrctrl API")
d4b52f83f198 ("of: Add convenience wrappers for of_map_id()")
f71f07bee9b5 ("of: Factor arguments passed to of_map_id() into a struct")
3567bcf0e985 ("PCI: host-generic: Move legacy DT binding fallback decision to caller of pci_host_common_parse_ports()")
2c5768344f88 ("PCI: imx6: Move pci_pwrctrl_create_devices() to imx_pcie_probe()")
f26b1c697a2b ("PCI: imx6: Add 'skip_pwrctrl_off' flag support")
c2b9620359b7 ("PCI: imx6: Add runtime PM support for i.MX95")
7678e81498e2 ("PCI: imx6: Fix i.MX6Q/DL boot hang caused by improper PHY power sequencing")
I'm hoping Richard and Sherry can resolve this issue. I guess maybe
the config details needed to reproduce it are in
https://lore.kernel.org/all/20260811063752.GA7332@francesco-nb ?
> [1] 7678e81498e2 ("PCI: imx6: Fix i.MX6Q/DL boot hang caused by improper PHY power sequencing")
> Link: https://lore.kernel.org/all/20260629143439.361560-1-leoreis.costa@gmail.com/
More information about the linux-arm-kernel
mailing list