On Thu, Feb 03, 2022 at 09:56:25PM +0100, Nicolas Ojeda Leon wrote: > Consume the host-provided specification of PCI host bridges if > available. Using the DxeHardwareInfoLib, populate a list of > hardware descriptors based on the content of the "hardware-info" > fw-cfg file, if provided. In the affirmative case, use the > resources and attributes specified by the hypervisor for each > Host Bridge to create the RootBridge elements. > > In Ovmf platforms, the host can provide the specification of > non-discoverable hardware resources like PCI host bridges. If the > proper fw-cfg file is found, parse the contents provided by the > host into a linked list by using the Hardware Info library. Then, > using the list of PCI host bridges' descriptions, populate the > PCI_ROOT_BRIDGES array with the resources and attributes specified > by the host. If the file is not provided or no Host Bridge is found > in it, fold back to the legacy method based on pre-defined > apertures and rules. > > In some use cases, the host requires additional control over the > hardware resources' configurations in the guest for performance and > discoverability reasons. For instance, to disclose information about > the PCI hierarchy to the guest so that this can profit from > optimized accesses. In this case, the host can decide to describe > multiple PCI Host Bridges and provide a specific set of resources > (e.g. MMIO apertures) so that the guest uses the values provided. > Using the provided values may entitle the guest to added performance, > for example by using specific MMIO mappings that can enable peer-to-peer > communication across the PCI hierarchy or by allocating memory closer > to a device for faster DMA transactions. > > Cc: Alexander Graf <g...@amazon.de> > Cc: Gerd Hoffmann <kra...@redhat.com> > > Signed-off-by: Nicolas Ojeda Leon <ncol...@amazon.com>
Acked-by: Gerd Hoffmann <kra...@redhat.com> -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#86387): https://edk2.groups.io/g/devel/message/86387 Mute This Topic: https://groups.io/mt/88893061/21656 Group Owner: devel+ow...@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-