iPXE
Data Structures | Macros | Typedefs | Enumerations | Functions
PiDxeCis.h File Reference

Include file matches things in PI. More...

#include <ipxe/efi/Uefi/UefiMultiPhase.h>
#include <ipxe/efi/Pi/PiMultiPhase.h>

Go to the source code of this file.

Data Structures

struct  EFI_GCD_MEMORY_SPACE_DESCRIPTOR
 EFI_GCD_MEMORY_SPACE_DESCRIPTOR. More...
 
struct  EFI_GCD_IO_SPACE_DESCRIPTOR
 EFI_GCD_IO_SPACE_DESCRIPTOR. More...
 
struct  DXE_SERVICES
 

Macros

#define DXE_SERVICES_SIGNATURE   0x565245535f455844ULL
 
#define DXE_SPECIFICATION_MAJOR_REVISION   1
 
#define DXE_SPECIFICATION_MINOR_REVISION   70
 
#define DXE_SERVICES_REVISION   ((DXE_SPECIFICATION_MAJOR_REVISION<<16) | (DXE_SPECIFICATION_MINOR_REVISION))
 

Typedefs

typedef EFI_STATUS(EFIAPIEFI_ADD_MEMORY_SPACE) (IN EFI_GCD_MEMORY_TYPE GcdMemoryType, IN EFI_PHYSICAL_ADDRESS BaseAddress, IN UINT64 Length, IN UINT64 Capabilities)
 Adds reserved memory, system memory, or memory-mapped I/O resources to the global coherency domain of the processor. More...
 
typedef EFI_STATUS(EFIAPIEFI_ALLOCATE_MEMORY_SPACE) (IN EFI_GCD_ALLOCATE_TYPE GcdAllocateType, IN EFI_GCD_MEMORY_TYPE GcdMemoryType, IN UINTN Alignment, IN UINT64 Length, IN OUT EFI_PHYSICAL_ADDRESS *BaseAddress, IN EFI_HANDLE ImageHandle, IN EFI_HANDLE DeviceHandle OPTIONAL)
 Allocates nonexistent memory, reserved memory, system memory, or memorymapped I/O resources from the global coherency domain of the processor. More...
 
typedef EFI_STATUS(EFIAPIEFI_FREE_MEMORY_SPACE) (IN EFI_PHYSICAL_ADDRESS BaseAddress, IN UINT64 Length)
 Frees nonexistent memory, reserved memory, system memory, or memory-mapped I/O resources from the global coherency domain of the processor. More...
 
typedef EFI_STATUS(EFIAPIEFI_REMOVE_MEMORY_SPACE) (IN EFI_PHYSICAL_ADDRESS BaseAddress, IN UINT64 Length)
 Removes reserved memory, system memory, or memory-mapped I/O resources from the global coherency domain of the processor. More...
 
typedef EFI_STATUS(EFIAPIEFI_GET_MEMORY_SPACE_DESCRIPTOR) (IN EFI_PHYSICAL_ADDRESS BaseAddress, OUT EFI_GCD_MEMORY_SPACE_DESCRIPTOR *Descriptor)
 Retrieves the descriptor for a memory region containing a specified address. More...
 
typedef EFI_STATUS(EFIAPIEFI_SET_MEMORY_SPACE_ATTRIBUTES) (IN EFI_PHYSICAL_ADDRESS BaseAddress, IN UINT64 Length, IN UINT64 Attributes)
 Modifies the attributes for a memory region in the global coherency domain of the processor. More...
 
typedef EFI_STATUS(EFIAPIEFI_SET_MEMORY_SPACE_CAPABILITIES) (IN EFI_PHYSICAL_ADDRESS BaseAddress, IN UINT64 Length, IN UINT64 Capabilities)
 Modifies the capabilities for a memory region in the global coherency domain of the processor. More...
 
typedef EFI_STATUS(EFIAPIEFI_GET_MEMORY_SPACE_MAP) (OUT UINTN *NumberOfDescriptors, OUT EFI_GCD_MEMORY_SPACE_DESCRIPTOR **MemorySpaceMap)
 Returns a map of the memory resources in the global coherency domain of the processor. More...
 
typedef EFI_STATUS(EFIAPIEFI_ADD_IO_SPACE) (IN EFI_GCD_IO_TYPE GcdIoType, IN EFI_PHYSICAL_ADDRESS BaseAddress, IN UINT64 Length)
 Adds reserved I/O or I/O resources to the global coherency domain of the processor. More...
 
typedef EFI_STATUS(EFIAPIEFI_ALLOCATE_IO_SPACE) (IN EFI_GCD_ALLOCATE_TYPE GcdAllocateType, IN EFI_GCD_IO_TYPE GcdIoType, IN UINTN Alignment, IN UINT64 Length, IN OUT EFI_PHYSICAL_ADDRESS *BaseAddress, IN EFI_HANDLE ImageHandle, IN EFI_HANDLE DeviceHandle OPTIONAL)
 Allocates nonexistent I/O, reserved I/O, or I/O resources from the global coherency domain of the processor. More...
 
typedef EFI_STATUS(EFIAPIEFI_FREE_IO_SPACE) (IN EFI_PHYSICAL_ADDRESS BaseAddress, IN UINT64 Length)
 Frees nonexistent I/O, reserved I/O, or I/O resources from the global coherency domain of the processor. More...
 
typedef EFI_STATUS(EFIAPIEFI_REMOVE_IO_SPACE) (IN EFI_PHYSICAL_ADDRESS BaseAddress, IN UINT64 Length)
 Removes reserved I/O or I/O resources from the global coherency domain of the processor. More...
 
typedef EFI_STATUS(EFIAPIEFI_GET_IO_SPACE_DESCRIPTOR) (IN EFI_PHYSICAL_ADDRESS BaseAddress, OUT EFI_GCD_IO_SPACE_DESCRIPTOR *Descriptor)
 Retrieves the descriptor for an I/O region containing a specified address. More...
 
typedef EFI_STATUS(EFIAPIEFI_GET_IO_SPACE_MAP) (OUT UINTN *NumberOfDescriptors, OUT EFI_GCD_IO_SPACE_DESCRIPTOR **IoSpaceMap)
 Returns a map of the I/O resources in the global coherency domain of the processor. More...
 
typedef EFI_STATUS(EFIAPIEFI_DISPATCH) (VOID)
 Loads and executed DXE drivers from firmware volumes. More...
 
typedef EFI_STATUS(EFIAPIEFI_SCHEDULE) (IN EFI_HANDLE FirmwareVolumeHandle, IN CONST EFI_GUID *FileName)
 Clears the Schedule on Request (SOR) flag for a component that is stored in a firmware volume. More...
 
typedef EFI_STATUS(EFIAPIEFI_TRUST) (IN EFI_HANDLE FirmwareVolumeHandle, IN CONST EFI_GUID *FileName)
 Promotes a file stored in a firmware volume from the untrusted to the trusted state. More...
 
typedef EFI_STATUS(EFIAPIEFI_PROCESS_FIRMWARE_VOLUME) (IN CONST VOID *FirmwareVolumeHeader, IN UINTN Size, OUT EFI_HANDLE *FirmwareVolumeHandle)
 Creates a firmware volume handle for a firmware volume that is present in system memory. More...
 
typedef DXE_SERVICES EFI_DXE_SERVICES
 

Enumerations

enum  EFI_GCD_MEMORY_TYPE {
  EfiGcdMemoryTypeNonExistent, EfiGcdMemoryTypeReserved, EfiGcdMemoryTypeSystemMemory, EfiGcdMemoryTypeMemoryMappedIo,
  EfiGcdMemoryTypePersistent, EfiGcdMemoryTypePersistentMemory = EfiGcdMemoryTypePersistent, EfiGcdMemoryTypeMoreReliable, EfiGcdMemoryTypeMaximum = 7
}
 Global Coherencey Domain types - Memory type. More...
 
enum  EFI_GCD_IO_TYPE { EfiGcdIoTypeNonExistent, EfiGcdIoTypeReserved, EfiGcdIoTypeIo, EfiGcdIoTypeMaximum }
 Global Coherencey Domain types - IO type. More...
 
enum  EFI_GCD_ALLOCATE_TYPE {
  EfiGcdAllocateAnySearchBottomUp, EfiGcdAllocateMaxAddressSearchBottomUp, EfiGcdAllocateAddress, EfiGcdAllocateAnySearchTopDown,
  EfiGcdAllocateMaxAddressSearchTopDown, EfiGcdMaxAllocateType
}
 The type of allocation to perform. More...
 

Functions

 FILE_LICENCE (BSD2_PATENT)
 

Detailed Description

Include file matches things in PI.

Copyright (c) 2006 - 2018, Intel Corporation. All rights reserved.
SPDX-License-Identifier: BSD-2-Clause-Patent

Revision Reference:
PI Version 1.7

Definition in file PiDxeCis.h.

Macro Definition Documentation

◆ DXE_SERVICES_SIGNATURE

#define DXE_SERVICES_SIGNATURE   0x565245535f455844ULL

Definition at line 698 of file PiDxeCis.h.

◆ DXE_SPECIFICATION_MAJOR_REVISION

#define DXE_SPECIFICATION_MAJOR_REVISION   1

Definition at line 699 of file PiDxeCis.h.

◆ DXE_SPECIFICATION_MINOR_REVISION

#define DXE_SPECIFICATION_MINOR_REVISION   70

Definition at line 700 of file PiDxeCis.h.

◆ DXE_SERVICES_REVISION

#define DXE_SERVICES_REVISION   ((DXE_SPECIFICATION_MAJOR_REVISION<<16) | (DXE_SPECIFICATION_MINOR_REVISION))

Definition at line 701 of file PiDxeCis.h.

Typedef Documentation

◆ EFI_ADD_MEMORY_SPACE

typedef EFI_STATUS(EFIAPI * EFI_ADD_MEMORY_SPACE) (IN EFI_GCD_MEMORY_TYPE GcdMemoryType, IN EFI_PHYSICAL_ADDRESS BaseAddress, IN UINT64 Length, IN UINT64 Capabilities)

Adds reserved memory, system memory, or memory-mapped I/O resources to the global coherency domain of the processor.

Parameters
GcdMemoryTypeThe type of memory resource being added.
BaseAddressThe physical address that is the start address of the memory resource being added.
LengthThe size, in bytes, of the memory resource that is being added.
CapabilitiesThe bit mask of attributes that the memory resource region supports.
Return values
EFI_SUCCESSThe memory resource was added to the global coherency domain of the processor.
EFI_INVALID_PARAMETERGcdMemoryType is invalid.
EFI_INVALID_PARAMETERLength is zero.
EFI_OUT_OF_RESOURCESThere are not enough system resources to add the memory resource to the global coherency domain of the processor.
EFI_UNSUPPORTEDThe processor does not support one or more bytes of the memory resource range specified by BaseAddress and Length.
EFI_ACCESS_DENIEDOne or more bytes of the memory resource range specified by BaseAddress and Length conflicts with a memory resource range that was previously added to the global coherency domain of the processor.
EFI_ACCESS_DENIEDOne or more bytes of the memory resource range specified by BaseAddress and Length was allocated in a prior call to AllocateMemorySpace().

Definition at line 250 of file PiDxeCis.h.

◆ EFI_ALLOCATE_MEMORY_SPACE

typedef EFI_STATUS(EFIAPI * EFI_ALLOCATE_MEMORY_SPACE) (IN EFI_GCD_ALLOCATE_TYPE GcdAllocateType, IN EFI_GCD_MEMORY_TYPE GcdMemoryType, IN UINTN Alignment, IN UINT64 Length, IN OUT EFI_PHYSICAL_ADDRESS *BaseAddress, IN EFI_HANDLE ImageHandle, IN EFI_HANDLE DeviceHandle OPTIONAL)

Allocates nonexistent memory, reserved memory, system memory, or memorymapped I/O resources from the global coherency domain of the processor.

Parameters
GcdAllocateTypeThe type of allocation to perform.
GcdMemoryTypeThe type of memory resource being allocated.
AlignmentThe log base 2 of the boundary that BaseAddress must be aligned on output. Align with 2^Alignment.
LengthThe size in bytes of the memory resource range that is being allocated.
BaseAddressA pointer to a physical address to allocate.
ImagehandleThe image handle of the agent that is allocating the memory resource.
DeviceHandleThe device handle for which the memory resource is being allocated.
Return values
EFI_INVALID_PARAMETERGcdAllocateType is invalid.
EFI_INVALID_PARAMETERGcdMemoryType is invalid.
EFI_INVALID_PARAMETERLength is zero.
EFI_INVALID_PARAMETERBaseAddress is NULL.
EFI_INVALID_PARAMETERImageHandle is NULL.
EFI_NOT_FOUNDThe memory resource request could not be satisfied. No descriptor contains the desired space.
EFI_OUT_OF_RESOURCESThere are not enough system resources to allocate the memory resource from the global coherency domain of the processor.
EFI_SUCCESSThe memory resource was allocated from the global coherency domain of the processor.

Definition at line 289 of file PiDxeCis.h.

◆ EFI_FREE_MEMORY_SPACE

typedef EFI_STATUS(EFIAPI * EFI_FREE_MEMORY_SPACE) (IN EFI_PHYSICAL_ADDRESS BaseAddress, IN UINT64 Length)

Frees nonexistent memory, reserved memory, system memory, or memory-mapped I/O resources from the global coherency domain of the processor.

Parameters
BaseAddressThe physical address that is the start address of the memory resource being freed.
LengthThe size in bytes of the memory resource range that is being freed.
Return values
EFI_SUCCESSThe memory resource was freed from the global coherency domain of the processor.
EFI_INVALID_PARAMETERLength is zero.
EFI_UNSUPPORTEDThe processor does not support one or more bytes of the memory resource range specified by BaseAddress and Length.
EFI_NOT_FOUNDThe memory resource range specified by BaseAddress and Length was not allocated with previous calls to AllocateMemorySpace().
EFI_OUT_OF_RESOURCESThere are not enough system resources to free the memory resource from the global coherency domain of the processor.

Definition at line 319 of file PiDxeCis.h.

◆ EFI_REMOVE_MEMORY_SPACE

typedef EFI_STATUS(EFIAPI * EFI_REMOVE_MEMORY_SPACE) (IN EFI_PHYSICAL_ADDRESS BaseAddress, IN UINT64 Length)

Removes reserved memory, system memory, or memory-mapped I/O resources from the global coherency domain of the processor.

Parameters
BaseAddressThe physical address that is the start address of the memory resource being removed.
LengthThe size in bytes of the memory resource that is being removed.
Return values
EFI_SUCCESSThe memory resource was removed from the global coherency domain of the processor.
EFI_INVALID_PARAMETERLength is zero.
EFI_UNSUPPORTEDThe processor does not support one or more bytes of the memory resource range specified by BaseAddress and Length.
EFI_NOT_FOUNDOne or more bytes of the memory resource range specified by BaseAddress and Length was not added with previous calls to AddMemorySpace().
EFI_ACCESS_DEFINEDOne or more bytes of the memory resource range specified by BaseAddress and Length has been allocated with AllocateMemorySpace().
EFI_OUT_OF_RESOURCESThere are not enough system resources to remove the memory resource from the global coherency domain of the processor.

Definition at line 347 of file PiDxeCis.h.

◆ EFI_GET_MEMORY_SPACE_DESCRIPTOR

typedef EFI_STATUS(EFIAPI * EFI_GET_MEMORY_SPACE_DESCRIPTOR) (IN EFI_PHYSICAL_ADDRESS BaseAddress, OUT EFI_GCD_MEMORY_SPACE_DESCRIPTOR *Descriptor)

Retrieves the descriptor for a memory region containing a specified address.

Parameters
BaseAddressThe physical address that is the start address of a memory region.
DescriptorA pointer to a caller allocated descriptor.
Return values
EFI_SUCCESSThe descriptor for the memory resource region containing BaseAddress was returned in Descriptor.
EFI_INVALID_PARAMETERDescriptor is NULL.
EFI_NOT_FOUNDA memory resource range containing BaseAddress was not found.

Definition at line 366 of file PiDxeCis.h.

◆ EFI_SET_MEMORY_SPACE_ATTRIBUTES

typedef EFI_STATUS(EFIAPI * EFI_SET_MEMORY_SPACE_ATTRIBUTES) (IN EFI_PHYSICAL_ADDRESS BaseAddress, IN UINT64 Length, IN UINT64 Attributes)

Modifies the attributes for a memory region in the global coherency domain of the processor.

Parameters
BaseAddressThe physical address that is the start address of a memory region.
LengthThe size in bytes of the memory region.
AttributesThe bit mask of attributes to set for the memory region.
Return values
EFI_SUCCESSThe attributes were set for the memory region.
EFI_INVALID_PARAMETERLength is zero.
EFI_UNSUPPORTEDThe processor does not support one or more bytes of the memory resource range specified by BaseAddress and Length.
EFI_UNSUPPORTEDThe bit mask of attributes is not support for the memory resource range specified by BaseAddress and Length.
EFI_ACCESS_DENIEDThe attributes for the memory resource range specified by BaseAddress and Length cannot be modified.
EFI_OUT_OF_RESOURCESThere are not enough system resources to modify the attributes of the memory resource range.
EFI_NOT_AVAILABLE_YETThe attributes cannot be set because CPU architectural protocol is not available yet.

Definition at line 394 of file PiDxeCis.h.

◆ EFI_SET_MEMORY_SPACE_CAPABILITIES

typedef EFI_STATUS(EFIAPI * EFI_SET_MEMORY_SPACE_CAPABILITIES) (IN EFI_PHYSICAL_ADDRESS BaseAddress, IN UINT64 Length, IN UINT64 Capabilities)

Modifies the capabilities for a memory region in the global coherency domain of the processor.

Parameters
BaseAddressThe physical address that is the start address of a memory region.
LengthThe size in bytes of the memory region.
CapabilitiesThe bit mask of capabilities that the memory region supports.
Return values
EFI_SUCCESSThe capabilities were set for the memory region.
EFI_INVALID_PARAMETERLength is zero.
EFI_UNSUPPORTEDThe capabilities specified by Capabilities do not include the memory region attributes currently in use.
EFI_ACCESS_DENIEDThe capabilities for the memory resource range specified by BaseAddress and Length cannot be modified.
EFI_OUT_OF_RESOURCESThere are not enough system resources to modify the capabilities of the memory resource range.

Definition at line 419 of file PiDxeCis.h.

◆ EFI_GET_MEMORY_SPACE_MAP

typedef EFI_STATUS(EFIAPI * EFI_GET_MEMORY_SPACE_MAP) (OUT UINTN *NumberOfDescriptors, OUT EFI_GCD_MEMORY_SPACE_DESCRIPTOR **MemorySpaceMap)

Returns a map of the memory resources in the global coherency domain of the processor.

Parameters
NumberOfDescriptorsA pointer to number of descriptors returned in the MemorySpaceMap buffer.
MemorySpaceMapA pointer to the array of EFI_GCD_MEMORY_SPACE_DESCRIPTORs.
Return values
EFI_SUCCESSThe memory space map was returned in the MemorySpaceMap buffer, and the number of descriptors in MemorySpaceMap was returned in NumberOfDescriptors.
EFI_INVALID_PARAMETERNumberOfDescriptors is NULL.
EFI_INVALID_PARAMETERMemorySpaceMap is NULL.
EFI_OUT_OF_RESOURCESThere are not enough resources to allocate MemorySpaceMap.

Definition at line 442 of file PiDxeCis.h.

◆ EFI_ADD_IO_SPACE

Adds reserved I/O or I/O resources to the global coherency domain of the processor.

Parameters
GcdIoTypeThe type of I/O resource being added.
BaseAddressThe physical address that is the start address of the I/O resource being added.
LengthThe size in bytes of the I/O resource that is being added.
Return values
EFI_SUCCESSThe I/O resource was added to the global coherency domain of the processor.
EFI_INVALID_PARAMETERGcdIoType is invalid.
EFI_INVALID_PARAMETERLength is zero.
EFI_OUT_OF_RESOURCESThere are not enough system resources to add the I/O resource to the global coherency domain of the processor.
EFI_UNSUPPORTEDThe processor does not support one or more bytes of the I/O resource range specified by BaseAddress and Length.
EFI_ACCESS_DENIEDOne or more bytes of the I/O resource range specified by BaseAddress and Length conflicts with an I/O resource range that was previously added to the global coherency domain of the processor.
EFI_ACCESS_DENIEDOne or more bytes of the I/O resource range specified by BaseAddress and Length was allocated in a prior call to AllocateIoSpace().

Definition at line 473 of file PiDxeCis.h.

◆ EFI_ALLOCATE_IO_SPACE

typedef EFI_STATUS(EFIAPI * EFI_ALLOCATE_IO_SPACE) (IN EFI_GCD_ALLOCATE_TYPE GcdAllocateType, IN EFI_GCD_IO_TYPE GcdIoType, IN UINTN Alignment, IN UINT64 Length, IN OUT EFI_PHYSICAL_ADDRESS *BaseAddress, IN EFI_HANDLE ImageHandle, IN EFI_HANDLE DeviceHandle OPTIONAL)

Allocates nonexistent I/O, reserved I/O, or I/O resources from the global coherency domain of the processor.

Parameters
GcdAllocateTypeThe type of allocation to perform.
GcdIoTypeThe type of I/O resource being allocated.
AlignmentThe log base 2 of the boundary that BaseAddress must be aligned on output.
LengthThe size in bytes of the I/O resource range that is being allocated.
BaseAddressA pointer to a physical address.
ImagehandleThe image handle of the agent that is allocating the I/O resource.
DeviceHandleThe device handle for which the I/O resource is being allocated.
Return values
EFI_SUCCESSThe I/O resource was allocated from the global coherency domain of the processor.
EFI_INVALID_PARAMETERGcdAllocateType is invalid.
EFI_INVALID_PARAMETERGcdIoType is invalid.
EFI_INVALID_PARAMETERLength is zero.
EFI_INVALID_PARAMETERBaseAddress is NULL.
EFI_INVALID_PARAMETERImageHandle is NULL.
EFI_OUT_OF_RESOURCESThere are not enough system resources to allocate the I/O resource from the global coherency domain of the processor.
EFI_NOT_FOUNDThe I/O resource request could not be satisfied.

Definition at line 505 of file PiDxeCis.h.

◆ EFI_FREE_IO_SPACE

Frees nonexistent I/O, reserved I/O, or I/O resources from the global coherency domain of the processor.

Parameters
BaseAddressThe physical address that is the start address of the I/O resource being freed.
LengthThe size in bytes of the I/O resource range that is being freed.
Return values
EFI_SUCCESSThe I/O resource was freed from the global coherency domain of the processor.
EFI_INVALID_PARAMETERLength is zero.
EFI_UNSUPPORTEDThe processor does not support one or more bytes of the I/O resource range specified by BaseAddress and Length.
EFI_NOT_FOUNDThe I/O resource range specified by BaseAddress and Length was not allocated with previous calls to AllocateIoSpace().
EFI_OUT_OF_RESOURCESThere are not enough system resources to free the I/O resource from the global coherency domain of the processor.

Definition at line 535 of file PiDxeCis.h.

◆ EFI_REMOVE_IO_SPACE

typedef EFI_STATUS(EFIAPI * EFI_REMOVE_IO_SPACE) (IN EFI_PHYSICAL_ADDRESS BaseAddress, IN UINT64 Length)

Removes reserved I/O or I/O resources from the global coherency domain of the processor.

Parameters
BaseAddressA pointer to a physical address that is the start address of the I/O resource being removed.
LengthThe size in bytes of the I/O resource that is being removed.
Return values
EFI_SUCCESSThe I/O resource was removed from the global coherency domain of the processor.
EFI_INVALID_PARAMETERLength is zero.
EFI_UNSUPPORTEDThe processor does not support one or more bytes of the I/O resource range specified by BaseAddress and Length.
EFI_NOT_FOUNDOne or more bytes of the I/O resource range specified by BaseAddress and Length was not added with previous calls to AddIoSpace().
EFI_ACCESS_DENIEDOne or more bytes of the I/O resource range specified by BaseAddress and Length has been allocated with AllocateIoSpace().
EFI_OUT_OF_RESOURCESThere are not enough system resources to remove the I/O resource from the global coherency domain of the processor.

Definition at line 565 of file PiDxeCis.h.

◆ EFI_GET_IO_SPACE_DESCRIPTOR

typedef EFI_STATUS(EFIAPI * EFI_GET_IO_SPACE_DESCRIPTOR) (IN EFI_PHYSICAL_ADDRESS BaseAddress, OUT EFI_GCD_IO_SPACE_DESCRIPTOR *Descriptor)

Retrieves the descriptor for an I/O region containing a specified address.

Parameters
BaseAddressThe physical address that is the start address of an I/O region.
DescriptorA pointer to a caller allocated descriptor.
Return values
EFI_SUCCESSThe descriptor for the I/O resource region containing BaseAddress was returned in Descriptor.
EFI_INVALID_PARAMETERDescriptor is NULL.
EFI_NOT_FOUNDAn I/O resource range containing BaseAddress was not found.

Definition at line 584 of file PiDxeCis.h.

◆ EFI_GET_IO_SPACE_MAP

typedef EFI_STATUS(EFIAPI * EFI_GET_IO_SPACE_MAP) (OUT UINTN *NumberOfDescriptors, OUT EFI_GCD_IO_SPACE_DESCRIPTOR **IoSpaceMap)

Returns a map of the I/O resources in the global coherency domain of the processor.

Parameters
NumberOfDescriptorsA pointer to number of descriptors returned in the IoSpaceMap buffer.
MemorySpaceMapA pointer to the array of EFI_GCD_IO_SPACE_DESCRIPTORs.
Return values
EFI_SUCCESSThe I/O space map was returned in the IoSpaceMap buffer, and the number of descriptors in IoSpaceMap was returned in NumberOfDescriptors.
EFI_INVALID_PARAMETERNumberOfDescriptors is NULL.
EFI_INVALID_PARAMETERIoSpaceMap is NULL.
EFI_OUT_OF_RESOURCESThere are not enough resources to allocate IoSpaceMap.

Definition at line 606 of file PiDxeCis.h.

◆ EFI_DISPATCH

typedef EFI_STATUS(EFIAPI * EFI_DISPATCH) (VOID)

Loads and executed DXE drivers from firmware volumes.

The Dispatch() function searches for DXE drivers in firmware volumes that have been installed since the last time the Dispatch() service was called. It then evaluates the dependency expressions of all the DXE drivers and loads and executes those DXE drivers whose dependency expression evaluate to TRUE. This service must interact with the Security Architectural Protocol to authenticate DXE drivers before they are executed. This process is continued until no more DXE drivers can be executed.

Return values
EFI_SUCCESSOne or more DXE driver were dispatched.
EFI_NOT_FOUNDNo DXE drivers were dispatched.
EFI_ALREADY_STARTEDAn attempt is being made to start the DXE Dispatcher recursively. Thus, no action was taken.

Definition at line 629 of file PiDxeCis.h.

◆ EFI_SCHEDULE

typedef EFI_STATUS(EFIAPI * EFI_SCHEDULE) (IN EFI_HANDLE FirmwareVolumeHandle, IN CONST EFI_GUID *FileName)

Clears the Schedule on Request (SOR) flag for a component that is stored in a firmware volume.

Parameters
FirmwareVolumeHandleThe handle of the firmware volume that contains the file specified by FileName.
FileNameA pointer to the name of the file in a firmware volume.
Return values
EFI_SUCCESSThe DXE driver was found and its SOR bit was cleared.
EFI_NOT_FOUNDThe DXE driver does not exist, or the DXE driver exists and its SOR bit is not set.

Definition at line 646 of file PiDxeCis.h.

◆ EFI_TRUST

typedef EFI_STATUS(EFIAPI * EFI_TRUST) (IN EFI_HANDLE FirmwareVolumeHandle, IN CONST EFI_GUID *FileName)

Promotes a file stored in a firmware volume from the untrusted to the trusted state.

Parameters
FirmwareVolumeHandleThe handle of the firmware volume that contains the file specified by FileName.
DriverNameA pointer to the name of the file in a firmware volume.
Returns
Status of promoting FFS from untrusted to trusted state.
Return values
EFI_NOT_FOUNDThe file was not found in the untrusted state.

Definition at line 664 of file PiDxeCis.h.

◆ EFI_PROCESS_FIRMWARE_VOLUME

typedef EFI_STATUS(EFIAPI * EFI_PROCESS_FIRMWARE_VOLUME) (IN CONST VOID *FirmwareVolumeHeader, IN UINTN Size, OUT EFI_HANDLE *FirmwareVolumeHandle)

Creates a firmware volume handle for a firmware volume that is present in system memory.

Parameters
FirmwareVolumeHeaderA pointer to the header of the firmware volume.
SizeThe size, in bytes, of the firmware volume.
FirmwareVolumeHandleOn output, a pointer to the created handle.
Return values
EFI_SUCCESSThe EFI_FIRMWARE_VOLUME_PROTOCOL and EFI_DEVICE_PATH_PROTOCOL were installed onto FirmwareVolumeHandle for the firmware volume described by FirmwareVolumeHeader and Size.
EFI_VOLUME_CORRUPTEDThe firmware volume described by FirmwareVolumeHeader and Size is corrupted.
EFI_OUT_OF_RESOURCESThere are not enough system resources available to produce the EFI_FIRMWARE_VOLUME_PROTOCOL and EFI_DEVICE_PATH_PROTOCOL for the firmware volume described by FirmwareVolumeHeader and Size.

Definition at line 689 of file PiDxeCis.h.

◆ EFI_DXE_SERVICES

Definition at line 743 of file PiDxeCis.h.

Enumeration Type Documentation

◆ EFI_GCD_MEMORY_TYPE

Global Coherencey Domain types - Memory type.

Enumerator
EfiGcdMemoryTypeNonExistent 

A memory region that is visible to the boot processor.

However, there are no system components that are currently decoding this memory region.

EfiGcdMemoryTypeReserved 

A memory region that is visible to the boot processor.

This memory region is being decoded by a system component, but the memory region is not considered to be either system memory or memory-mapped I/O.

EfiGcdMemoryTypeSystemMemory 

A memory region that is visible to the boot processor.

A memory controller is currently decoding this memory region and the memory controller is producing a tested system memory region that is available to the memory services.

EfiGcdMemoryTypeMemoryMappedIo 

A memory region that is visible to the boot processor.

This memory region is currently being decoded by a component as memory-mapped I/O that can be used to access I/O devices in the platform.

EfiGcdMemoryTypePersistent 

A memory region that is visible to the boot processor.

This memory supports byte-addressable non-volatility.

EfiGcdMemoryTypePersistentMemory 
EfiGcdMemoryTypeMoreReliable 

A memory region that provides higher reliability relative to other memory in the system.

If all memory has the same reliability, then this bit is not used.

EfiGcdMemoryTypeMaximum 

Definition at line 23 of file PiDxeCis.h.

23  {
24  ///
25  /// A memory region that is visible to the boot processor. However, there are no system
26  /// components that are currently decoding this memory region.
27  ///
29  ///
30  /// A memory region that is visible to the boot processor. This memory region is being
31  /// decoded by a system component, but the memory region is not considered to be either
32  /// system memory or memory-mapped I/O.
33  ///
35  ///
36  /// A memory region that is visible to the boot processor. A memory controller is
37  /// currently decoding this memory region and the memory controller is producing a
38  /// tested system memory region that is available to the memory services.
39  ///
41  ///
42  /// A memory region that is visible to the boot processor. This memory region is
43  /// currently being decoded by a component as memory-mapped I/O that can be used to
44  /// access I/O devices in the platform.
45  ///
47  ///
48  /// A memory region that is visible to the boot processor.
49  /// This memory supports byte-addressable non-volatility.
50  ///
52  //
53  // Keep original one for the compatibility.
54  //
56  ///
57  /// A memory region that provides higher reliability relative to other memory in the
58  /// system. If all memory has the same reliability, then this bit is not used.
59  ///
61  // ///
62  // /// A memory region that describes system memory that has not been accepted
63  // /// by a corresponding call to the underlying isolation architecture.
64  // ///
65  // /// Please be noted:
66  // /// EfiGcdMemoryTypeUnaccepted is defined in PrePiDxeCis.h because it has not been
67  // /// defined in PI spec.
68  // EfiGcdMemoryTypeUnaccepted,
EFI_GCD_MEMORY_TYPE
Global Coherencey Domain types - Memory type.
Definition: PiDxeCis.h:23
A memory region that provides higher reliability relative to other memory in the system.
Definition: PiDxeCis.h:60
A memory region that is visible to the boot processor.
Definition: PiDxeCis.h:40
A memory region that is visible to the boot processor.
Definition: PiDxeCis.h:34
A memory region that is visible to the boot processor.
Definition: PiDxeCis.h:46
A memory region that is visible to the boot processor.
Definition: PiDxeCis.h:28
A memory region that is visible to the boot processor.
Definition: PiDxeCis.h:51

◆ EFI_GCD_IO_TYPE

Global Coherencey Domain types - IO type.

Enumerator
EfiGcdIoTypeNonExistent 

An I/O region that is visible to the boot processor.

However, there are no system components that are currently decoding this I/O region.

EfiGcdIoTypeReserved 

An I/O region that is visible to the boot processor.

This I/O region is currently being decoded by a system component, but the I/O region cannot be used to access I/O devices.

EfiGcdIoTypeIo 

An I/O region that is visible to the boot processor.

This I/O region is currently being decoded by a system component that is producing I/O ports that can be used to access I/O devices.

EfiGcdIoTypeMaximum 

Definition at line 75 of file PiDxeCis.h.

75  {
76  ///
77  /// An I/O region that is visible to the boot processor. However, there are no system
78  /// components that are currently decoding this I/O region.
79  ///
81  ///
82  /// An I/O region that is visible to the boot processor. This I/O region is currently being
83  /// decoded by a system component, but the I/O region cannot be used to access I/O devices.
84  ///
86  ///
87  /// An I/O region that is visible to the boot processor. This I/O region is currently being
88  /// decoded by a system component that is producing I/O ports that can be used to access I/O devices.
89  ///
An I/O region that is visible to the boot processor.
Definition: PiDxeCis.h:85
An I/O region that is visible to the boot processor.
Definition: PiDxeCis.h:90
An I/O region that is visible to the boot processor.
Definition: PiDxeCis.h:80
EFI_GCD_IO_TYPE
Global Coherencey Domain types - IO type.
Definition: PiDxeCis.h:75

◆ EFI_GCD_ALLOCATE_TYPE

The type of allocation to perform.

Enumerator
EfiGcdAllocateAnySearchBottomUp 

The GCD memory space map is searched from the lowest address up to the highest address looking for unallocated memory ranges.

EfiGcdAllocateMaxAddressSearchBottomUp 

The GCD memory space map is searched from the lowest address up to the specified MaxAddress looking for unallocated memory ranges.

EfiGcdAllocateAddress 

The GCD memory space map is checked to see if the memory range starting at the specified Address is available.

EfiGcdAllocateAnySearchTopDown 

The GCD memory space map is searched from the highest address down to the lowest address looking for unallocated memory ranges.

EfiGcdAllocateMaxAddressSearchTopDown 

The GCD memory space map is searched from the specified MaxAddress down to the lowest address looking for unallocated memory ranges.

EfiGcdMaxAllocateType 

Definition at line 97 of file PiDxeCis.h.

97  {
98  ///
99  /// The GCD memory space map is searched from the lowest address up to the highest address
100  /// looking for unallocated memory ranges.
101  ///
103  ///
104  /// The GCD memory space map is searched from the lowest address up
105  /// to the specified MaxAddress looking for unallocated memory ranges.
106  ///
108  ///
109  /// The GCD memory space map is checked to see if the memory range starting
110  /// at the specified Address is available.
111  ///
113  ///
114  /// The GCD memory space map is searched from the highest address down to the lowest address
115  /// looking for unallocated memory ranges.
116  ///
118  ///
119  /// The GCD memory space map is searched from the specified MaxAddress
120  /// down to the lowest address looking for unallocated memory ranges.
121  ///
The GCD memory space map is searched from the lowest address up to the highest address looking for un...
Definition: PiDxeCis.h:102
The GCD memory space map is searched from the highest address down to the lowest address looking for ...
Definition: PiDxeCis.h:117
The GCD memory space map is checked to see if the memory range starting at the specified Address is a...
Definition: PiDxeCis.h:112
The GCD memory space map is searched from the specified MaxAddress down to the lowest address looking...
Definition: PiDxeCis.h:122
The GCD memory space map is searched from the lowest address up to the specified MaxAddress looking f...
Definition: PiDxeCis.h:107
EFI_GCD_ALLOCATE_TYPE
The type of allocation to perform.
Definition: PiDxeCis.h:97

Function Documentation

◆ FILE_LICENCE()

FILE_LICENCE ( BSD2_PATENT  )