Re: BUG: no PCI/PCIe devices found in 85xx architecture
From: Scott Wood <hidden>
Date: 2013-06-25 23:47:00
On 06/25/2013 01:40:14 PM, Stefani Seibold wrote:
Hi, =20 there is a bug in kernel 3.9 which the new fsl_pci platform driver. =20 The pcibios_init in pci_32.c will be called before the platform driver =20 probe will be invoked. =20 The call order for a p2020 board with linux 3.9 is currently: =20 fsl_pci_init pcibios_init fsl_pci_probe fsl_pci_probe fsl_pci_probe =20 Therefore the PCI/PCIe bridge will be added after the PCI/PCIe busses was scanned for devices. So no PCI/PCIe devices are available. =20 Everything works fine by reverting the fsl_pci.[ch] to the version in linux 3.4, because the PCI/PCIe bridges will be added in the ..._setup_arch() function, before the pcibios_init function is called. =20 Any solution for this issue?
I can't reproduce this on p3041 -- pcibios_init gets called after =20 fsl_pci_probe, and its PCIe e1000 gets detected and used. fsl_pci_probe should be called when of_platform_bus_probe is called, =20 which is in a machine_arch_initcall. pcibios_init is a =20 subsys_initcall, which should happen later. Which p2020 board are you using? Could you check when it is calling =20 of_platform_bus_probe? -Scott=