On Tue, Jan 25, 2022 at 03:30:10PM +0100, Nicolas Ojeda Leon wrote: > Following the Hardware Info library, create the DxeHardwareInfoLib > which implements the whole API capable of parsing heterogeneous hardware > information. The list-like API grants callers a flexible and common > pattern to retrieve the data. Moreover, the initial source is a BLOB > which generalizes the host-to-guest transmission mechanism. > > The Hardware Info library main objective is to provide a way to > describe non-discoverable hardware so that the host can share the > available resources with the guest in Ovmf platforms. This change > features and embraces the main idea behind the library by providing > an API that parses a BLOB into a linked list to retrieve hardware > data from any source. Additionally, list-like APIs are provided so > that the hardware info list can be traversed conveniently. > Similarly, the capability is provided to filter results by specific > hardware types. However, heterogeneous elements can be added to the > list, increasing the flexibility. This way, a single source, for > example a fw-cfg file, can be used to describe several instances of > multiple types of hardware. > > This part of the Hardware Info library makes use of dynamic memory > and is intended for stages in which memory services are available. > A motivation example is the PciHostBridgeLib. This library, part > of the PCI driver populates the list of PCI root bridges during DXE > stage for future steps to discover the resources under them. The > hardware info library can be used to obtain the detailed description > of available host bridges, for instance in the form of a fw-cfg file, > and parse that information into a dynmaic list that allows, first to > verify consistency of the data, and second discover the resources > availabe for each root bridge. > > 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 (#86153): https://edk2.groups.io/g/devel/message/86153 Mute This Topic: https://groups.io/mt/88672481/21656 Group Owner: devel+ow...@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-