Intel Extensible Firmware Interface Network Router User Manual


  Open as PDF
of 1084
 
Protocols Device I/O Protocol
Version 1.10 12/01/02 18-7
DEVICE_IO.PciDevicePath()
Summary
Provides an EFI Device Path for a PCI device with the given PCI configuration space address.
Prototype
typedef
EFI_STATUS
(EFIAPI *EFI_PCI_DEVICE_PATH) (
IN EFI_DEVICE_IO_INTERFACE *This,
IN UINT64 PciAddress,
IN OUT EFI_DEVICE_PATH **PciDevicePath
);
Parameters
This A pointer to the EFI_DEVICE_IO_INTERFACE instance. Type
EFI_DEVICE_IO_INTERFACE is defined in Section 18.2.
PciAddress The PCI configuration space address of the device whose Device Path
is going to be returned. The address field is encoded as shown in
Table 18-1.
PciDevicePath A pointer to the pointer for the EFI Device Path for PciAddress.
Memory for the Device Path is allocated from the pool. Type
EFI_DEVICE_PATH
is defined in Chapter 8.
Description
The DEVICE_IO.PciDevicePath() function provides an EFI Device Path for a PCI device
with the given PCI configuration space address.
A Device Path for the requested PCI device is returned in PciDevicePath.
PciDevicePath() allocates the memory required for the Device Path from the pool and the
caller is responsible for calling FreePool()
to free the memory used to contain the Device Path.
If there is not enough memory to calculate or return the PciDevicePath the function will return
EFI_OUT_OF_RESOURCES. If the function cannot calculate a valid Device Path for
PciAddress the function will return EFI_UNSUPPORTED.
Status Codes Returned
EFI_SUCCESS
The
PciDevicePath returns a pointer to a valid EFI Device Path.
EFI_UNSUPPORTED
The
PciAddress does not map to a valid EFI Device Path.
EFI_OUT_OF_RESOURCES The request could not be completed due to a lack of resources.