X-Git-Url: https://git.proxmox.com/?p=mirror_edk2.git;a=blobdiff_plain;f=MdePkg%2FInclude%2FGuid%2FDebugImageInfoTable.h;h=ee3ff90e398afe871ea0739ef5833f3ec382db9d;hp=e74a9f91e2a16f2a52f9548fc0421e0281c078fa;hb=373ade0eb64a522e45b1b94c15b95fb5ab417c00;hpb=c2f83f0ae172410cbd6d2ebf73dd776a0c2cd6e0 diff --git a/MdePkg/Include/Guid/DebugImageInfoTable.h b/MdePkg/Include/Guid/DebugImageInfoTable.h index e74a9f91e2..ee3ff90e39 100644 --- a/MdePkg/Include/Guid/DebugImageInfoTable.h +++ b/MdePkg/Include/Guid/DebugImageInfoTable.h @@ -1,7 +1,7 @@ /** @file GUID and related data structures used with the Debug Image Info Table. - Copyright (c) 2006, Intel Corporation + Copyright (c) 2006 - 2008, Intel Corporation All rights reserved. This program and the accompanying materials are licensed and made available under the terms and conditions of the BSD License which accompanies this distribution. The full text of the license may be found at @@ -10,8 +10,6 @@ THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. - Module Name: DebugImageInfoTable.h - @par Revision Reference: GUID defined in UEFI 2.0 spec. @@ -22,6 +20,9 @@ #include +/// +/// EFI_DEBUG_IMAGE_INFO_TABLE configuration table GUID declaration. +/// #define EFI_DEBUG_IMAGE_INFO_TABLE_GUID \ { \ 0x49152e77, 0x1ada, 0x4764, {0xb7, 0xa2, 0x7a, 0xfe, 0xfe, 0xd9, 0x5e, 0x8b } \ @@ -29,18 +30,28 @@ #define EFI_DEBUG_IMAGE_INFO_UPDATE_IN_PROGRESS 0x01 #define EFI_DEBUG_IMAGE_INFO_TABLE_MODIFIED 0x02 -#define EFI_DEBUG_IMAGE_INFO_INITIAL_SIZE (EFI_PAGE_SIZE / sizeof (UINTN)) + #define EFI_DEBUG_IMAGE_INFO_TYPE_NORMAL 0x01 typedef struct { - UINT64 Signature; - EFI_PHYSICAL_ADDRESS EfiSystemTableBase; - UINT32 Crc32; + UINT64 Signature; ///< A constant UINT64 that has the value EFI_SYSTEM_TABLE_SIGNATURE + EFI_PHYSICAL_ADDRESS EfiSystemTableBase; ///< The physical address of the EFI system table. + UINT32 Crc32; ///< A 32-bit CRC value that is used to verify the EFI_SYSTEM_TABLE_POINTER structure is valid. } EFI_SYSTEM_TABLE_POINTER; typedef struct { + /// + /// Indicates the type of image info structure. For PE32 EFI images, + /// this is set to EFI_DEBUG_IMAGE_INFO_TYPE_NORMAL. + /// UINT32 ImageInfoType; + /// + /// A pointer to an instance of the loaded image protocol for the associated image. + /// EFI_LOADED_IMAGE_PROTOCOL *LoadedImageProtocolInstance; + /// + /// Indicates the image handle of the associated image. + /// EFI_HANDLE ImageHandle; } EFI_DEBUG_IMAGE_INFO_NORMAL; @@ -50,12 +61,20 @@ typedef union { } EFI_DEBUG_IMAGE_INFO; typedef struct { + /// + /// UpdateStatus is used by the system to indicate the state of the debug image info table. + /// volatile UINT32 UpdateStatus; + /// + /// The number of EFI_DEBUG_IMAGE_INFO elements in the array pointed to by EfiDebugImageInfoTable. + /// UINT32 TableSize; + /// + /// A pointer to the first element of an array of EFI_DEBUG_IMAGE_INFO structures. + /// EFI_DEBUG_IMAGE_INFO *EfiDebugImageInfoTable; } EFI_DEBUG_IMAGE_INFO_TABLE_HEADER; - extern EFI_GUID gEfiDebugImageInfoTableGuid; #endif