On 06/25/2013 01:40:14 PM, Stefani Seibold wrote:
Hi,
there is a bug in kernel 3.9 which the new fsl_pci platform driver.
The
pcibios_init in pci_32.c will be called before the platform driver
probe
will be invoked.
The call order for a p2020 board with linux 3.9 is currently:
fsl_pci_init
pcibios_init
fsl_pci_probe
fsl_pci_probe
fsl_pci_probe
Therefore the PCI/PCIe bridge will be added after the PCI/PCIe busses
was scanned for devices. So no PCI/PCIe devices are available.
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.
Any solution for this issue?
I can't reproduce this on p3041 -- pcibios_init gets called after
fsl_pci_probe, and its PCIe e1000 gets detected and used.
fsl_pci_probe should be called when of_platform_bus_probe is called,
which is in a machine_arch_initcall. pcibios_init is a
subsys_initcall, which should happen later.
Which p2020 board are you using? Could you check when it is calling
of_platform_bus_probe?
-Scott
_______________________________________________
Linuxppc-dev mailing list
Linuxppc-dev@lists.ozlabs.org
https://lists.ozlabs.org/listinfo/linuxppc-dev