/** @file | |
Header file of OVMF instance of PciHostBridgeLib. | |
Copyright (c) 2016, Intel Corporation. All rights reserved.<BR> | |
This program and the accompanying materials are licensed and made available | |
under the terms and conditions of the BSD License which accompanies this | |
distribution. The full text of the license may be found at | |
http://opensource.org/licenses/bsd-license.php. | |
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, WITHOUT | |
WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. | |
**/ | |
PCI_ROOT_BRIDGE * | |
ScanForRootBridges ( | |
UINTN *NumberOfRootBridges | |
); | |
/** | |
Initialize a PCI_ROOT_BRIDGE structure. | |
@param[in] Supports Supported attributes. | |
@param[in] Attributes Initial attributes. | |
@param[in] AllocAttributes Allocation attributes. | |
@param[in] RootBusNumber The bus number to store in RootBus. | |
@param[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 repsonsible for ensuring that | |
RootBusNumber <= MaxSubBusNumber. If | |
RootBusNumber equals MaxSubBusNumber, then the | |
root bus has no room for subordinate buses. | |
@param[in] Io IO aperture. | |
@param[in] Mem MMIO aperture. | |
@param[in] MemAbove4G MMIO aperture above 4G. | |
@param[in] PMem Prefetchable MMIO aperture. | |
@param[in] PMemAbove4G Prefetchable MMIO aperture above 4G. | |
@param[out] RootBus The PCI_ROOT_BRIDGE structure (allocated by the | |
caller) that should be filled in by this | |
function. | |
@retval EFI_SUCCESS Initialization successful. A device path | |
consisting of an ACPI device path node, with | |
UID = RootBusNumber, has been allocated and | |
linked into RootBus. | |
@retval EFI_OUT_OF_RESOURCES Memory allocation failed. | |
**/ | |
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 | |
); |