Musings on PCI busses

Grant Likely grant.likely at secretlab.ca
Wed May 20 02:30:39 EST 2009


On Tue, May 19, 2009 at 10:25 AM, Stephen Neuendorffer
<stephen.neuendorffer at xilinx.com> wrote:
>
>> 1) Probe the host controller in an of_platform driver.  This has the
>> advantage of simplicity.  The probe routine will get automatically
>> called when the PCI host controller device tree node is registered
>> with the of_platform bus.  The bus parenthood also gets reflected in
>> the device model and sysfs.  The disadvantage is that it defers PCI
>> bus probing until after the of_platform bus is probed (maybe this is
>> okay; maybe this already happens anyway).
>>
>> 2) Probe the host controller in an subsys_initcall().  Advantage is
>> PCI can be probed earlier in the init path.  Disadvantages (minor) are
>> that it will always get called if the driver is enabled, and it needs
>> to manually search the device tree for PCI nodes.
>>
>> I'm leaning towards making it an of_platform driver.  Doing so also
>> makes it available to other powerpc processors (not just virtex) in
>> the case where a Xilinx FPGA is welded up to a discrete SoC and a host
>> controller instance is put into the FPGA.  (one of those weird things
>> people do when they have an FPGA in their system).
>
> I agree that something is called for...  The first might be slightly
> simpler, since it would probably transparently deal with the presence
> of more than one PLB->PCI bridge?

Yes, I think so.

g.


-- 
Grant Likely, B.Sc., P.Eng.
Secret Lab Technologies Ltd.



More information about the Linuxppc-dev mailing list