Hi, experts
         If there is 2 root bridges under 1 host bridge on the PCI hierarchy, 
whether EDK2 Pci bus driver can support it ? the answer is YES, but some 
confused things in it.

1)       On BDS phase, ConnectController is called for every root bridge, so 
Pci bus start() will be called for every root bridge.

  VisitAllInstancesOfProtocol (&gEfiPciRootBridgeIoProtocolGuid, 
ConnectRootBridge, NULL);

2)       In PCI bus driver, Pci start() will do enumeration on the entire host 
bridge

PciEnumerator()->PciHostBridgeEnumerator->”PciResAlloc->GetNextRootBridge()”

That means Do enumeration on entire host bridge for every one root bridge. So 
there are 2 enumerations on entire host bridge for my PCI hierarchy.
         What I confused is why do 2 enumerations on entire host bridge by 
every one root bridge. Since BDS connect controller by one root bridge , Pci 
bus driver should enumerate corresponding root bridge, But it do the entire 
host bridge which is the parent of the root bridge.
Or BDS should connect controller by one host bridge, then it will match the pci 
bus driver ‘s enumeration policy.
In a word, I think it is illogical for current EDKII code.

         Well, the current code execution will do 2 enumerations on host bridge 
for 2 root bridges under 1 host bridge. Even though 2rd enumeration would be 
not full enumeration, but do PciEnumeratorLight(), I think it is still not 
necessary. Whether there is any side effect ?  In another word, current PCI bus 
driver enumeration can’t be Suitable for 2 root bridges under 1 host bridge or 
not? It indeed match the PCI hierarchy of 2 host bridges and 1 root bridge 
under 1 host bridge.

Thanks
Eric



保密声明:
本邮件含有保密或专有信息,仅供指定收件人使用。严禁对本邮件或其内容做任何未经授权的查阅、使用、复制或转发。
CONFIDENTIAL NOTE:
This email contains confidential or legally privileged information and is for 
the sole use of its intended recipient. Any unauthorized review, use, copying 
or forwarding of this email or the content of this email is strictly prohibited.
_______________________________________________
edk2-devel mailing list
[email protected]
https://lists.01.org/mailman/listinfo/edk2-devel

Reply via email to