--- a/arch/arm/mach-cns3xxx/pcie.c +++ b/arch/arm/mach-cns3xxx/pcie.c @@ -366,6 +366,8 @@ void __init cns3xxx_pcie_init_late(void) for (i = 0; i < ARRAY_SIZE(cns3xxx_pcie); i++) { cns3xxx_pcie_check_link(&cns3xxx_pcie[i]); + if (!cns3xxx_pcie[i].linked) + continue; cns3xxx_pcie_hw_init(&cns3xxx_pcie[i]); private_data = &cns3xxx_pcie[i]; pci_common_init(&hw_pci);