TianoCore EDK2 master
|
#include <Pi/PiFirmwareFile.h>
Go to the source code of this file.
Data Structures | |
struct | MEMORY_PROFILE_COMMON_HEADER |
struct | MEMORY_PROFILE_CONTEXT |
struct | MEMORY_PROFILE_DRIVER_INFO |
struct | MEMORY_PROFILE_ALLOC_INFO |
struct | MEMORY_PROFILE_DESCRIPTOR |
struct | MEMORY_PROFILE_FREE_MEMORY |
struct | MEMORY_PROFILE_MEMORY_RANGE |
struct | _EDKII_MEMORY_PROFILE_PROTOCOL |
struct | SMRAM_PROFILE_PARAMETER_HEADER |
struct | SMRAM_PROFILE_PARAMETER_GET_PROFILE_INFO |
struct | SMRAM_PROFILE_PARAMETER_GET_PROFILE_DATA |
struct | SMRAM_PROFILE_PARAMETER_GET_PROFILE_DATA_BY_OFFSET |
struct | SMRAM_PROFILE_PARAMETER_RECORDING_STATE |
struct | SMRAM_PROFILE_PARAMETER_REGISTER_IMAGE |
struct | SMRAM_PROFILE_PARAMETER_UNREGISTER_IMAGE |
Enumerations | |
enum | MEMORY_PROFILE_ACTION { MemoryProfileActionAllocatePages = 1 , MemoryProfileActionFreePages = 2 , MemoryProfileActionAllocatePool = 3 , MemoryProfileActionFreePool = 4 } |
Variables | |
EFI_GUID | gEdkiiMemoryProfileGuid |
EFI_GUID | gEdkiiSmmMemoryProfileGuid |
Memory profile data structure.
Copyright (c) 2014 - 2018, Intel Corporation. All rights reserved.
SPDX-License-Identifier: BSD-2-Clause-Patent
Definition in file MemoryProfile.h.
#define EDKII_MEMORY_PROFILE_GUID |
Definition at line 452 of file MemoryProfile.h.
#define EDKII_SMM_MEMORY_PROFILE_GUID |
Definition at line 460 of file MemoryProfile.h.
#define MEMORY_PROFILE_ACTION_BASIC_MASK 0xF |
Definition at line 85 of file MemoryProfile.h.
#define MEMORY_PROFILE_ACTION_EXTENSION_ALIGN_MASK 0x0040 |
Definition at line 95 of file MemoryProfile.h.
#define MEMORY_PROFILE_ACTION_EXTENSION_COPY_MASK 0x0100 |
Definition at line 93 of file MemoryProfile.h.
#define MEMORY_PROFILE_ACTION_EXTENSION_LIB_MASK 0x8000 |
Definition at line 91 of file MemoryProfile.h.
#define MEMORY_PROFILE_ACTION_EXTENSION_MASK 0xFFF0 |
Definition at line 90 of file MemoryProfile.h.
#define MEMORY_PROFILE_ACTION_EXTENSION_MEM_TYPE_BASIC 0x0000 |
Definition at line 97 of file MemoryProfile.h.
#define MEMORY_PROFILE_ACTION_EXTENSION_MEM_TYPE_MASK 0x0030 |
Definition at line 96 of file MemoryProfile.h.
#define MEMORY_PROFILE_ACTION_EXTENSION_MEM_TYPE_RESERVED 0x0020 |
Definition at line 99 of file MemoryProfile.h.
#define MEMORY_PROFILE_ACTION_EXTENSION_MEM_TYPE_RUNTIME 0x0010 |
Definition at line 98 of file MemoryProfile.h.
#define MEMORY_PROFILE_ACTION_EXTENSION_REALLOC_MASK 0x0200 |
Definition at line 92 of file MemoryProfile.h.
#define MEMORY_PROFILE_ACTION_EXTENSION_ZERO_MASK 0x0080 |
Definition at line 94 of file MemoryProfile.h.
#define MEMORY_PROFILE_ACTION_LIB_ALLOCATE_ALIGNED_PAGES 0x8041 |
Definition at line 108 of file MemoryProfile.h.
#define MEMORY_PROFILE_ACTION_LIB_ALLOCATE_ALIGNED_RESERVED_PAGES 0x8061 |
Definition at line 110 of file MemoryProfile.h.
#define MEMORY_PROFILE_ACTION_LIB_ALLOCATE_ALIGNED_RUNTIME_PAGES 0x8051 |
Definition at line 109 of file MemoryProfile.h.
#define MEMORY_PROFILE_ACTION_LIB_ALLOCATE_COPY_POOL 0x8103 |
Definition at line 119 of file MemoryProfile.h.
#define MEMORY_PROFILE_ACTION_LIB_ALLOCATE_PAGES 0x8001 |
Definition at line 104 of file MemoryProfile.h.
#define MEMORY_PROFILE_ACTION_LIB_ALLOCATE_POOL 0x8003 |
Definition at line 112 of file MemoryProfile.h.
#define MEMORY_PROFILE_ACTION_LIB_ALLOCATE_RESERVED_COPY_POOL 0x8123 |
Definition at line 121 of file MemoryProfile.h.
#define MEMORY_PROFILE_ACTION_LIB_ALLOCATE_RESERVED_PAGES 0x8021 |
Definition at line 106 of file MemoryProfile.h.
#define MEMORY_PROFILE_ACTION_LIB_ALLOCATE_RESERVED_POOL 0x8023 |
Definition at line 114 of file MemoryProfile.h.
#define MEMORY_PROFILE_ACTION_LIB_ALLOCATE_RESERVED_ZERO_POOL 0x80a3 |
Definition at line 118 of file MemoryProfile.h.
#define MEMORY_PROFILE_ACTION_LIB_ALLOCATE_RUNTIME_COPY_POOL 0x8113 |
Definition at line 120 of file MemoryProfile.h.
#define MEMORY_PROFILE_ACTION_LIB_ALLOCATE_RUNTIME_PAGES 0x8011 |
Definition at line 105 of file MemoryProfile.h.
#define MEMORY_PROFILE_ACTION_LIB_ALLOCATE_RUNTIME_POOL 0x8013 |
Definition at line 113 of file MemoryProfile.h.
#define MEMORY_PROFILE_ACTION_LIB_ALLOCATE_RUNTIME_ZERO_POOL 0x8093 |
Definition at line 117 of file MemoryProfile.h.
#define MEMORY_PROFILE_ACTION_LIB_ALLOCATE_ZERO_POOL 0x8083 |
Definition at line 116 of file MemoryProfile.h.
#define MEMORY_PROFILE_ACTION_LIB_FREE_ALIGNED_PAGES 0x8042 |
Definition at line 111 of file MemoryProfile.h.
#define MEMORY_PROFILE_ACTION_LIB_FREE_PAGES 0x8002 |
Definition at line 107 of file MemoryProfile.h.
#define MEMORY_PROFILE_ACTION_LIB_FREE_POOL 0x8004 |
Definition at line 115 of file MemoryProfile.h.
#define MEMORY_PROFILE_ACTION_LIB_REALLOCATE_POOL 0x8203 |
Definition at line 122 of file MemoryProfile.h.
#define MEMORY_PROFILE_ACTION_LIB_REALLOCATE_RESERVED_POOL 0x8223 |
Definition at line 124 of file MemoryProfile.h.
#define MEMORY_PROFILE_ACTION_LIB_REALLOCATE_RUNTIME_POOL 0x8213 |
Definition at line 123 of file MemoryProfile.h.
#define MEMORY_PROFILE_ACTION_USER_DEFINED_MASK 0x80000000 |
Definition at line 134 of file MemoryProfile.h.
#define MEMORY_PROFILE_ALLOC_INFO_REVISION 0x0002 |
Definition at line 137 of file MemoryProfile.h.
#define MEMORY_PROFILE_ALLOC_INFO_SIGNATURE SIGNATURE_32 ('M','P','A','I') |
Definition at line 136 of file MemoryProfile.h.
#define MEMORY_PROFILE_CONTEXT_REVISION 0x0002 |
Definition at line 27 of file MemoryProfile.h.
#define MEMORY_PROFILE_CONTEXT_SIGNATURE SIGNATURE_32 ('M','P','C','T') |
Definition at line 26 of file MemoryProfile.h.
#define MEMORY_PROFILE_DESCRIPTOR_REVISION 0x0001 |
Definition at line 153 of file MemoryProfile.h.
#define MEMORY_PROFILE_DESCRIPTOR_SIGNATURE SIGNATURE_32 ('M','P','D','R') |
Definition at line 152 of file MemoryProfile.h.
#define MEMORY_PROFILE_DRIVER_INFO_REVISION 0x0003 |
Definition at line 41 of file MemoryProfile.h.
#define MEMORY_PROFILE_DRIVER_INFO_SIGNATURE SIGNATURE_32 ('M','P','D','I') |
Definition at line 40 of file MemoryProfile.h.
#define MEMORY_PROFILE_FREE_MEMORY_REVISION 0x0001 |
Definition at line 162 of file MemoryProfile.h.
#define MEMORY_PROFILE_FREE_MEMORY_SIGNATURE SIGNATURE_32 ('M','P','R','M') |
Definition at line 161 of file MemoryProfile.h.
#define MEMORY_PROFILE_MEMORY_RANGE_REVISION 0x0001 |
Definition at line 173 of file MemoryProfile.h.
#define MEMORY_PROFILE_MEMORY_RANGE_SIGNATURE SIGNATURE_32 ('M','P','M','R') |
Definition at line 172 of file MemoryProfile.h.
#define MEMORY_PROFILE_RECORDING_DISABLE FALSE |
Definition at line 274 of file MemoryProfile.h.
#define MEMORY_PROFILE_RECORDING_ENABLE TRUE |
Definition at line 273 of file MemoryProfile.h.
#define SMRAM_PROFILE_COMMAND_DEPRECATED1 0x3 |
Definition at line 394 of file MemoryProfile.h.
#define SMRAM_PROFILE_COMMAND_DEPRECATED2 0x4 |
Definition at line 395 of file MemoryProfile.h.
#define SMRAM_PROFILE_COMMAND_GET_PROFILE_DATA 0x2 |
Definition at line 390 of file MemoryProfile.h.
#define SMRAM_PROFILE_COMMAND_GET_PROFILE_DATA_BY_OFFSET 0x5 |
Definition at line 397 of file MemoryProfile.h.
#define SMRAM_PROFILE_COMMAND_GET_PROFILE_INFO 0x1 |
Definition at line 389 of file MemoryProfile.h.
#define SMRAM_PROFILE_COMMAND_GET_RECORDING_STATE 0x6 |
Definition at line 398 of file MemoryProfile.h.
#define SMRAM_PROFILE_COMMAND_SET_RECORDING_STATE 0x7 |
Definition at line 399 of file MemoryProfile.h.
typedef EFI_STATUS(EFIAPI * EDKII_MEMORY_PROFILE_GET_DATA) (IN EDKII_MEMORY_PROFILE_PROTOCOL *This, IN OUT UINT64 *ProfileSize, OUT VOID *ProfileBuffer) |
Get memory profile data.
[in] | This | The EDKII_MEMORY_PROFILE_PROTOCOL instance. |
[in,out] | ProfileSize | On entry, points to the size in bytes of the ProfileBuffer. On return, points to the size of the data returned in ProfileBuffer. |
[out] | ProfileBuffer | Profile buffer. |
Definition at line 218 of file MemoryProfile.h.
typedef EFI_STATUS(EFIAPI * EDKII_MEMORY_PROFILE_GET_RECORDING_STATE) (IN EDKII_MEMORY_PROFILE_PROTOCOL *This, OUT BOOLEAN *RecordingState) |
Get memory profile recording state.
[in] | This | The EDKII_MEMORY_PROFILE_PROTOCOL instance. |
[out] | RecordingState | Recording state. |
Definition at line 288 of file MemoryProfile.h.
typedef struct _EDKII_MEMORY_PROFILE_PROTOCOL EDKII_MEMORY_PROFILE_PROTOCOL |
Definition at line 201 of file MemoryProfile.h.
typedef EFI_STATUS(EFIAPI * EDKII_MEMORY_PROFILE_RECORD) (IN EDKII_MEMORY_PROFILE_PROTOCOL *This, IN PHYSICAL_ADDRESS CallerAddress, IN MEMORY_PROFILE_ACTION Action, IN EFI_MEMORY_TYPE MemoryType, IN VOID *Buffer, IN UINTN Size, IN CHAR8 *ActionString OPTIONAL) |
Record memory profile of multilevel caller.
[in] | This | The EDKII_MEMORY_PROFILE_PROTOCOL instance. |
[in] | CallerAddress | Address of caller. |
[in] | Action | Memory profile action. |
[in] | MemoryType | Memory type. EfiMaxMemoryType means the MemoryType is unknown. |
[in] | Buffer | Buffer address. |
[in] | Size | Buffer size. |
[in] | ActionString | String for memory profile action. Only needed for user defined allocate action. |
Definition at line 335 of file MemoryProfile.h.
typedef EFI_STATUS(EFIAPI * EDKII_MEMORY_PROFILE_REGISTER_IMAGE) (IN EDKII_MEMORY_PROFILE_PROTOCOL *This, IN EFI_DEVICE_PATH_PROTOCOL *FilePath, IN PHYSICAL_ADDRESS ImageBase, IN UINT64 ImageSize, IN EFI_FV_FILETYPE FileType) |
Register image to memory profile.
[in] | This | The EDKII_MEMORY_PROFILE_PROTOCOL instance. |
[in] | FilePath | File path of the image. |
[in] | ImageBase | Image base address. |
[in] | ImageSize | Image size. |
[in] | FileType | File type of the image. |
Definition at line 241 of file MemoryProfile.h.
typedef EFI_STATUS(EFIAPI * EDKII_MEMORY_PROFILE_SET_RECORDING_STATE) (IN EDKII_MEMORY_PROFILE_PROTOCOL *This, IN BOOLEAN RecordingState) |
Set memory profile recording state.
[in] | This | The EDKII_MEMORY_PROFILE_PROTOCOL instance. |
[in] | RecordingState | Recording state. |
Definition at line 305 of file MemoryProfile.h.
typedef EFI_STATUS(EFIAPI * EDKII_MEMORY_PROFILE_UNREGISTER_IMAGE) (IN EDKII_MEMORY_PROFILE_PROTOCOL *This, IN EFI_DEVICE_PATH_PROTOCOL *FilePath, IN PHYSICAL_ADDRESS ImageBase, IN UINT64 ImageSize) |
Unregister image from memory profile.
[in] | This | The EDKII_MEMORY_PROFILE_PROTOCOL instance. |
[in] | FilePath | File path of the image. |
[in] | ImageBase | Image base address. |
[in] | ImageSize | Image size. |
Definition at line 265 of file MemoryProfile.h.
Definition at line 458 of file MemoryProfile.h.
enum MEMORY_PROFILE_ACTION |
Definition at line 62 of file MemoryProfile.h.