iPXE
Data Fields
_EFI_PCI_IO_PROTOCOL Struct Reference

The EFI_PCI_IO_PROTOCOL provides the basic Memory, I/O, PCI configuration, and DMA interfaces used to abstract accesses to PCI controllers. More...

#include <PciIo.h>

Data Fields

EFI_PCI_IO_PROTOCOL_POLL_IO_MEM PollMem
 
EFI_PCI_IO_PROTOCOL_POLL_IO_MEM PollIo
 
EFI_PCI_IO_PROTOCOL_ACCESS Mem
 
EFI_PCI_IO_PROTOCOL_ACCESS Io
 
EFI_PCI_IO_PROTOCOL_CONFIG_ACCESS Pci
 
EFI_PCI_IO_PROTOCOL_COPY_MEM CopyMem
 
EFI_PCI_IO_PROTOCOL_MAP Map
 
EFI_PCI_IO_PROTOCOL_UNMAP Unmap
 
EFI_PCI_IO_PROTOCOL_ALLOCATE_BUFFER AllocateBuffer
 
EFI_PCI_IO_PROTOCOL_FREE_BUFFER FreeBuffer
 
EFI_PCI_IO_PROTOCOL_FLUSH Flush
 
EFI_PCI_IO_PROTOCOL_GET_LOCATION GetLocation
 
EFI_PCI_IO_PROTOCOL_ATTRIBUTES Attributes
 
EFI_PCI_IO_PROTOCOL_GET_BAR_ATTRIBUTES GetBarAttributes
 
EFI_PCI_IO_PROTOCOL_SET_BAR_ATTRIBUTES SetBarAttributes
 
UINT64 RomSize
 The size, in bytes, of the ROM image. More...
 
VOIDRomImage
 A pointer to the in memory copy of the ROM image. More...
 

Detailed Description

The EFI_PCI_IO_PROTOCOL provides the basic Memory, I/O, PCI configuration, and DMA interfaces used to abstract accesses to PCI controllers.

There is one EFI_PCI_IO_PROTOCOL instance for each PCI controller on a PCI bus. A device driver that wishes to manage a PCI controller in a system will have to retrieve the EFI_PCI_IO_PROTOCOL instance that is associated with the PCI controller.

Definition at line 525 of file PciIo.h.

Field Documentation

◆ PollMem

EFI_PCI_IO_PROTOCOL_POLL_IO_MEM _EFI_PCI_IO_PROTOCOL::PollMem

Definition at line 526 of file PciIo.h.

◆ PollIo

EFI_PCI_IO_PROTOCOL_POLL_IO_MEM _EFI_PCI_IO_PROTOCOL::PollIo

Definition at line 527 of file PciIo.h.

◆ Mem

EFI_PCI_IO_PROTOCOL_ACCESS _EFI_PCI_IO_PROTOCOL::Mem

Definition at line 528 of file PciIo.h.

◆ Io

EFI_PCI_IO_PROTOCOL_ACCESS _EFI_PCI_IO_PROTOCOL::Io

Definition at line 529 of file PciIo.h.

◆ Pci

EFI_PCI_IO_PROTOCOL_CONFIG_ACCESS _EFI_PCI_IO_PROTOCOL::Pci

Definition at line 530 of file PciIo.h.

◆ CopyMem

EFI_PCI_IO_PROTOCOL_COPY_MEM _EFI_PCI_IO_PROTOCOL::CopyMem

Definition at line 531 of file PciIo.h.

◆ Map

EFI_PCI_IO_PROTOCOL_MAP _EFI_PCI_IO_PROTOCOL::Map

Definition at line 532 of file PciIo.h.

Referenced by nii_map().

◆ Unmap

EFI_PCI_IO_PROTOCOL_UNMAP _EFI_PCI_IO_PROTOCOL::Unmap

Definition at line 533 of file PciIo.h.

Referenced by nii_pci_close(), and nii_unmap().

◆ AllocateBuffer

EFI_PCI_IO_PROTOCOL_ALLOCATE_BUFFER _EFI_PCI_IO_PROTOCOL::AllocateBuffer

Definition at line 534 of file PciIo.h.

◆ FreeBuffer

EFI_PCI_IO_PROTOCOL_FREE_BUFFER _EFI_PCI_IO_PROTOCOL::FreeBuffer

Definition at line 535 of file PciIo.h.

◆ Flush

EFI_PCI_IO_PROTOCOL_FLUSH _EFI_PCI_IO_PROTOCOL::Flush

Definition at line 536 of file PciIo.h.

◆ GetLocation

EFI_PCI_IO_PROTOCOL_GET_LOCATION _EFI_PCI_IO_PROTOCOL::GetLocation

Definition at line 537 of file PciIo.h.

◆ Attributes

EFI_PCI_IO_PROTOCOL_ATTRIBUTES _EFI_PCI_IO_PROTOCOL::Attributes

Definition at line 538 of file PciIo.h.

◆ GetBarAttributes

EFI_PCI_IO_PROTOCOL_GET_BAR_ATTRIBUTES _EFI_PCI_IO_PROTOCOL::GetBarAttributes

Definition at line 539 of file PciIo.h.

Referenced by nii_pci_open().

◆ SetBarAttributes

EFI_PCI_IO_PROTOCOL_SET_BAR_ATTRIBUTES _EFI_PCI_IO_PROTOCOL::SetBarAttributes

Definition at line 540 of file PciIo.h.

◆ RomSize

UINT64 _EFI_PCI_IO_PROTOCOL::RomSize

The size, in bytes, of the ROM image.

Definition at line 545 of file PciIo.h.

◆ RomImage

VOID* _EFI_PCI_IO_PROTOCOL::RomImage

A pointer to the in memory copy of the ROM image.

The PCI Bus Driver is responsible for allocating memory for the ROM image, and copying the contents of the ROM to memory. The contents of this buffer are either from the PCI option ROM that can be accessed through the ROM BAR of the PCI controller, or it is from a platform-specific location. The Attributes() function can be used to determine from which of these two sources the RomImage buffer was initialized.

Definition at line 555 of file PciIo.h.


The documentation for this struct was generated from the following file: