WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. \r
\r
@par Revision Reference:\r
- Version 1.0.\r
+ PI Version 1.0\r
\r
**/\r
\r
/// Global Coherencey Domain types - Memory type\r
///\r
typedef enum {\r
+ ///\r
+ /// A memory region that is visible to the boot processor. However, there are no system\r
+ /// components that are currently decoding this memory region.\r
+ ///\r
EfiGcdMemoryTypeNonExistent,\r
+ ///\r
+ /// A memory region that is visible to the boot processor. This memory region is being\r
+ /// decoded by a system component, but the memory region is not considered to be either\r
+ /// system memory or memory-mapped I/O.\r
+ ///\r
EfiGcdMemoryTypeReserved,\r
+ ///\r
+ /// A memory region that is visible to the boot processor. A memory controller is\r
+ /// currently decoding this memory region and the memory controller is producing a\r
+ /// tested system memory region that is available to the memory services.\r
+ ///\r
EfiGcdMemoryTypeSystemMemory,\r
+ ///\r
+ /// A memory region that is visible to the boot processor. This memory region is\r
+ /// currently being decoded by a component as memory-mapped I/O that can be used to\r
+ /// access I/O devices in the platform.\r
+ ///\r
EfiGcdMemoryTypeMemoryMappedIo,\r
EfiGcdMemoryTypeMaximum\r
} EFI_GCD_MEMORY_TYPE;\r
/// Global Coherencey Domain types - IO type\r
///\r
typedef enum {\r
+ ///\r
+ /// An I/O region that is visible to the boot processor. However, there are no system\r
+ /// components that are currently decoding this I/O region.\r
+ ///\r
EfiGcdIoTypeNonExistent,\r
+ ///\r
+ /// An I/O region that is visible to the boot processor. This I/O region is currently being\r
+ /// decoded by a system component, but the I/O region cannot be used to access I/O devices.\r
+ ///\r
EfiGcdIoTypeReserved,\r
+ ///\r
+ /// An I/O region that is visible to the boot processor. This I/O region is currently being\r
+ /// decoded by a system component that is producing I/O ports that can be used to access I/O devices.\r
+ ///\r
EfiGcdIoTypeIo,\r
EfiGcdIoTypeMaximum\r
} EFI_GCD_IO_TYPE;\r
/// The type of allocation to perform.\r
/// \r
typedef enum {\r
+ ///\r
+ /// The GCD memory space map is searched from the lowest address up to the highest address\r
+ /// looking for unallocated memory ranges.\r
+ ///\r
EfiGcdAllocateAnySearchBottomUp,\r
+ ///\r
+ /// The GCD memory space map is searched from the lowest address up \r
+ /// to the specified MaxAddress looking for unallocated memory ranges.\r
+ ///\r
EfiGcdAllocateMaxAddressSearchBottomUp,\r
+ ///\r
+ /// The GCD memory space map is checked to see if the memory range starting \r
+ /// at the specified Address is available.\r
+ ///\r
EfiGcdAllocateAddress,\r
+ ///\r
+ /// The GCD memory space map is searched from the highest address down to the lowest address \r
+ /// looking for unallocated memory ranges.\r
+ ///\r
EfiGcdAllocateAnySearchTopDown,\r
+ ///\r
+ /// The GCD memory space map is searched from the specified MaxAddress \r
+ /// down to the lowest address looking for unallocated memory ranges.\r
+ ///\r
EfiGcdAllocateMaxAddressSearchTopDown,\r
EfiGcdMaxAllocateType\r
} EFI_GCD_ALLOCATE_TYPE;\r
IN EFI_PHYSICAL_ADDRESS BaseAddress,\r
IN UINT64 Length,\r
IN UINT64 Capabilities\r
- )\r
-;\r
+ );\r
\r
/**\r
Allocates nonexistent memory, reserved memory, system memory, or memorymapped\r
IN OUT EFI_PHYSICAL_ADDRESS *BaseAddress,\r
IN EFI_HANDLE ImageHandle,\r
IN EFI_HANDLE DeviceHandle OPTIONAL\r
- )\r
-;\r
+ );\r
\r
/**\r
Frees nonexistent memory, reserved memory, system memory, or memory-mapped\r
(EFIAPI *EFI_FREE_MEMORY_SPACE)(\r
IN EFI_PHYSICAL_ADDRESS BaseAddress,\r
IN UINT64 Length\r
- )\r
-;\r
+ );\r
\r
/**\r
Removes reserved memory, system memory, or memory-mapped I/O resources from\r
(EFIAPI *EFI_REMOVE_MEMORY_SPACE)(\r
IN EFI_PHYSICAL_ADDRESS BaseAddress,\r
IN UINT64 Length\r
- )\r
-;\r
+ );\r
\r
/**\r
Retrieves the descriptor for a memory region containing a specified address.\r
(EFIAPI *EFI_GET_MEMORY_SPACE_DESCRIPTOR)(\r
IN EFI_PHYSICAL_ADDRESS BaseAddress,\r
OUT EFI_GCD_MEMORY_SPACE_DESCRIPTOR *Descriptor\r
- )\r
-;\r
+ );\r
\r
/**\r
Modifies the attributes for a memory region in the global coherency domain of the\r
IN EFI_PHYSICAL_ADDRESS BaseAddress,\r
IN UINT64 Length,\r
IN UINT64 Attributes\r
- )\r
-;\r
+ );\r
\r
/**\r
Returns a map of the memory resources in the global coherency domain of the\r
(EFIAPI *EFI_GET_MEMORY_SPACE_MAP)(\r
OUT UINTN *NumberOfDescriptors,\r
OUT EFI_GCD_MEMORY_SPACE_DESCRIPTOR **MemorySpaceMap\r
- )\r
-;\r
+ );\r
\r
/**\r
Adds reserved I/O or I/O resources to the global coherency domain of the processor.\r
IN EFI_GCD_IO_TYPE GcdIoType,\r
IN EFI_PHYSICAL_ADDRESS BaseAddress,\r
IN UINT64 Length\r
- )\r
-;\r
+ );\r
\r
/**\r
Allocates nonexistent I/O, reserved I/O, or I/O resources from the global coherency\r
IN OUT EFI_PHYSICAL_ADDRESS *BaseAddress,\r
IN EFI_HANDLE ImageHandle,\r
IN EFI_HANDLE DeviceHandle OPTIONAL\r
- )\r
-;\r
+ );\r
\r
/**\r
Frees nonexistent I/O, reserved I/O, or I/O resources from the global coherency\r
(EFIAPI *EFI_FREE_IO_SPACE)(\r
IN EFI_PHYSICAL_ADDRESS BaseAddress,\r
IN UINT64 Length\r
- )\r
-;\r
+ );\r
\r
/**\r
Removes reserved I/O or I/O resources from the global coherency domain of the\r
(EFIAPI *EFI_REMOVE_IO_SPACE)(\r
IN EFI_PHYSICAL_ADDRESS BaseAddress,\r
IN UINT64 Length\r
- )\r
-;\r
+ );\r
\r
/**\r
Retrieves the descriptor for an I/O region containing a specified address.\r
(EFIAPI *EFI_GET_IO_SPACE_DESCRIPTOR)(\r
IN EFI_PHYSICAL_ADDRESS BaseAddress,\r
OUT EFI_GCD_IO_SPACE_DESCRIPTOR *Descriptor\r
- )\r
-;\r
+ );\r
\r
/**\r
Returns a map of the I/O resources in the global coherency domain of the processor.\r
(EFIAPI *EFI_GET_IO_SPACE_MAP)(\r
OUT UINTN *NumberOfDescriptors,\r
OUT EFI_GCD_IO_SPACE_DESCRIPTOR **IoSpaceMap\r
- )\r
-;\r
+ );\r
\r
\r
\r
EFI_STATUS\r
(EFIAPI *EFI_DISPATCH)(\r
VOID\r
- )\r
-;\r
+ );\r
\r
/**\r
Clears the Schedule on Request (SOR) flag for a component that is stored in a firmware volume.\r
(EFIAPI *EFI_SCHEDULE)(\r
IN EFI_HANDLE FirmwareVolumeHandle,\r
IN CONST EFI_GUID *FileName\r
- )\r
-;\r
+ );\r
\r
/**\r
Promotes a file stored in a firmware volume from the untrusted to the trusted state.\r
(EFIAPI *EFI_TRUST)(\r
IN EFI_HANDLE FirmwareVolumeHandle,\r
IN CONST EFI_GUID *FileName\r
- )\r
-;\r
+ );\r
\r
/**\r
Creates a firmware volume handle for a firmware volume that is present in system memory.\r
IN CONST VOID *FirmwareVolumeHeader,\r
IN UINTN Size,\r
OUT EFI_HANDLE *FirmwareVolumeHandle\r
- )\r
-;\r
+ );\r
\r
//\r
// DXE Services Table\r
#define DXE_SERVICES_REVISION ((1<<16) | (00))\r
\r
typedef struct {\r
+ ///\r
+ /// The table header for the DXE Services Table.\r
+ /// This header contains the DXE_SERVICES_SIGNATURE and DXE_SERVICES_REVISION values.\r
+ ///\r
EFI_TABLE_HEADER Hdr;\r
\r
//\r