|
TianoCore EDK2 master
|
#include <UniversalPayload/PciRootBridges.h>Go to the source code of this file.
Data Structures | |
| struct | CB_PCI_ROOT_BRIDGE_DEVICE_PATH |
Functions | |
| PCI_ROOT_BRIDGE * | ScanForRootBridges (OUT UINTN *NumberOfRootBridges) |
| PCI_ROOT_BRIDGE * | RetrieveRootBridgeInfoFromHob (IN UNIVERSAL_PAYLOAD_PCI_ROOT_BRIDGES *PciRootBridgeInfo, OUT UINTN *NumberOfRootBridges) |
| EFI_STATUS | InitRootBridge (IN UINT64 Supports, IN UINT64 Attributes, IN UINT64 AllocAttributes, IN UINT8 RootBusNumber, IN UINT8 MaxSubBusNumber, IN PCI_ROOT_BRIDGE_APERTURE *Io, IN PCI_ROOT_BRIDGE_APERTURE *Mem, IN PCI_ROOT_BRIDGE_APERTURE *MemAbove4G, IN PCI_ROOT_BRIDGE_APERTURE *PMem, IN PCI_ROOT_BRIDGE_APERTURE *PMemAbove4G, OUT PCI_ROOT_BRIDGE *RootBus) |
| EFI_DEVICE_PATH_PROTOCOL * | CreateRootBridgeDevicePath (IN UINT32 HID, IN UINT32 UID) |
Header file of PciHostBridgeLib.
Copyright (C) 2016, Red Hat, Inc. Copyright (c) 2016 - 2021, Intel Corporation. All rights reserved.
SPDX-License-Identifier: BSD-2-Clause-Patent
Definition in file PciHostBridge.h.
| EFI_DEVICE_PATH_PROTOCOL * CreateRootBridgeDevicePath | ( | IN UINT32 | HID, |
| IN UINT32 | UID | ||
| ) |
Initialize DevicePath for a PCI_ROOT_BRIDGE.
| [in] | HID | HID for device path |
| [in] | UID | UID for device path |
| A | pointer to the new created device patch. |
Definition at line 163 of file PciHostBridgeLib.c.
| EFI_STATUS InitRootBridge | ( | IN UINT64 | Supports, |
| IN UINT64 | Attributes, | ||
| IN UINT64 | AllocAttributes, | ||
| IN UINT8 | RootBusNumber, | ||
| IN UINT8 | MaxSubBusNumber, | ||
| IN PCI_ROOT_BRIDGE_APERTURE * | Io, | ||
| IN PCI_ROOT_BRIDGE_APERTURE * | Mem, | ||
| IN PCI_ROOT_BRIDGE_APERTURE * | MemAbove4G, | ||
| IN PCI_ROOT_BRIDGE_APERTURE * | PMem, | ||
| IN PCI_ROOT_BRIDGE_APERTURE * | PMemAbove4G, | ||
| OUT PCI_ROOT_BRIDGE * | RootBus | ||
| ) |
Initialize a PCI_ROOT_BRIDGE structure.
| [in] | Supports | Supported attributes. |
| [in] | Attributes | Initial attributes. |
| [in] | AllocAttributes | Allocation attributes. |
| [in] | RootBusNumber | The bus number to store in RootBus. |
| [in] | MaxSubBusNumber | The inclusive maximum bus number that can be assigned to any subordinate bus found behind any PCI bridge hanging off this root bus. |
The caller is responsible for ensuring that RootBusNumber <= MaxSubBusNumber. If RootBusNumber equals MaxSubBusNumber, then the root bus has no room for subordinate buses.
| [in] | Io | IO aperture. |
| [in] | Mem | MMIO aperture. |
| [in] | MemAbove4G | MMIO aperture above 4G. |
| [in] | PMem | Prefetchable MMIO aperture. |
| [in] | PMemAbove4G | Prefetchable MMIO aperture above 4G. |
| [out] | RootBus | The PCI_ROOT_BRIDGE structure (allocated by the caller) that should be filled in by this function. |
| EFI_SUCCESS | Initialization successful. A device path consisting of an ACPI device path node, with UID = RootBusNumber, has been allocated and linked into RootBus. |
| EFI_OUT_OF_RESOURCES | Memory allocation failed. |
Definition at line 94 of file PciHostBridgeLib.c.
| PCI_ROOT_BRIDGE * RetrieveRootBridgeInfoFromHob | ( | IN UNIVERSAL_PAYLOAD_PCI_ROOT_BRIDGES * | PciRootBridgeInfo, |
| OUT UINTN * | NumberOfRootBridges | ||
| ) |
Scan for all root bridges from Universal Payload PciRootBridgeInfoHob
| [in] | PciRootBridgeInfo | Pointer of Universal Payload PCI Root Bridge Info Hob |
| [out] | NumberOfRootBridges | Number of root bridges detected |
| Pointer | to the allocated PCI_ROOT_BRIDGE structure array. |
Definition at line 536 of file PciHostBridgeSupport.c.
| PCI_ROOT_BRIDGE * ScanForRootBridges | ( | OUT UINTN * | NumberOfRootBridges | ) |
Scan for all root bridges in platform.
| [out] | NumberOfRootBridges | Number of root bridges detected |
| Pointer | to the allocated PCI_ROOT_BRIDGE structure array. |
Definition at line 208 of file PciHostBridgeSupport.c.