Re: One chart on pci bridge and its bus and their children

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, Jun 05, 2012 at 12:38:52PM -0700, Yinghai Lu wrote:
>>
>> Yinghai,
>>
>> is there a reason why this can't be fixed in
>> pci_create_root_bus() by having
>>   bus->self = bridge; /* 'bridge' is the pci_device of the corresponding host bridge */
>>   get_device(&bridge->dev);
>
>self is pointer to pci_dev bridge.
>
>and for root bus, it is NULL. that mean no pci bridge device related.
>
>bridge is device, and have that assigned from host bridge dev, or pci
>bridge dev.
>
>also for virtfn of iov, new bus from there will not have self assigned too.
>for it even bridge is not assigned.
>
>so bridge is just generic way to save bridge (pci, host) device ...

I did a summarize, we have three types of pci_bus.


Can we identify the type by following method?

+--------------------+--------------------------------------------------+
| bus type           |   identification                                 |
+--------------------+--------------------------------------------------+
| root_bus           |parent is NULL, bridge point to host_bridge dev   |
+--------------------+--------------------------------------------------+
| general_bus        |parent to parent bus, bridge point to the bridge  |
+--------------------+--------------------------------------------------+
| iov_bus            |parent to parent bus, bridge point to NULL        |
+--------------------+--------------------------------------------------+

-- 
Richard Yang
Help you, Help me

--
To unsubscribe from this list: send the line "unsubscribe linux-pci" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [DMA Engine]     [Linux Coverity]     [Linux USB]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Greybus]

  Powered by Linux