Intel Extensible Firmware Interface Network Router User Manual


  Open as PDF
of 1084
 
Extensible Firmware Interface Specification
12-88 12/01/02 Version 1.10
Description
The Attributes() function performs an operation on the attributes associated with this PCI
controller. If Operation is greater than or equal to the maximum operation value, then
EFI_INVALID_PARAMETER is returned. If Operation is Get or Supported, and Result
is NULL, then EFI_INVALID_PARAMETER is returned. If Operation is Set, Enable, or
Disable for an attribute that is not supported by the PCI controller, then EFI_UNSUPPORTED is
returned. Otherwise, the operation is performed as described in Related Definitions and
EFI_SUCCESS is returned. It is possible for this function to return EFI_UNSUPPORTED even if
the PCI controller supports the attribute. This can occur when the PCI root bridge does not support
the attribute. For example, if VGA I/O and VGA Memory transactions cannot be forwarded onto
PCI root bridge #2, then a request by a PCI VGA driver to enable the VGA_IO and VGA_MEMORY
bits will fail even though a PCI VGA controller behind PCI root bridge #2 is able to decode these
transactions.
This function will also return EFI_UNSUPPORTED if more than one PCI controller on the same
PCI root bridge has already successfully requested one of the ISA addressing attributes. For
example, if one PCI VGA controller had already requested the VGA_IO and VGA_MEMORY
attributes, then a second PCI VGA controller on the same root bridge cannot succeed in requesting
those same attributes. This restriction applies to the ISA-, VGA-, and IDE-related attributes.
Status Codes Returned
EFI_SUCCESS The operation on the PCI controllers attributes was completed. If
the operation was
Get or Supported, then the attribute mask
is returned in
Result.
EFI_INVALID_PARAMETER
Operation is greater than or equal to
EfiPciIoAttributeOperationMaximum.
EFI_INVALID_PARAMETER
Operation is Get and Result is NULL.
EFI_INVALID_PARAMETER
Operation is Supported and Result is NULL.
EFI_UNSUPPORTED
Operation is Set, and one or more of the bits set in
Attributes are not supported by this PCI controller or one of
its parent bridges.
EFI_UNSUPPORTED
Operation is Enable, and one or more of the bits set in
Attributes are not supported by this PCI controller or one of
its parent bridges.
EFI_UNSUPPORTED
Operation is Disable, and one or more of the bits set in
Attributes are not supported by this PCI controller or one of
its parent bridges.