]> git.proxmox.com Git - mirror_edk2.git/blame - MdeModulePkg/Include/Guid/PiSmmMemoryAttributesTable.h
MdeModulePkg: Apply uncrustify changes
[mirror_edk2.git] / MdeModulePkg / Include / Guid / PiSmmMemoryAttributesTable.h
CommitLineData
97d27604
JY
1/** @file\r
2 Define the GUID of the EDKII PI SMM memory attribute table, which\r
3 is published by PI SMM Core.\r
4\r
5Copyright (c) 2016, Intel Corporation. All rights reserved.<BR>\r
9d510e61 6SPDX-License-Identifier: BSD-2-Clause-Patent\r
97d27604
JY
7\r
8**/\r
9\r
10#ifndef _PI_SMM_MEMORY_ATTRIBUTES_TABLE_H_\r
11#define _PI_SMM_MEMORY_ATTRIBUTES_TABLE_H_\r
12\r
1436aea4 13#define EDKII_PI_SMM_MEMORY_ATTRIBUTES_TABLE_GUID {\\r
97d27604
JY
14 0x6b9fd3f7, 0x16df, 0x45e8, {0xbd, 0x39, 0xb9, 0x4a, 0x66, 0x54, 0x1a, 0x5d} \\r
15}\r
16\r
17//\r
18// The PI SMM memory attribute table contains the SMM memory map for SMM image.\r
19//\r
20// This table is installed to SMST as SMM configuration table.\r
21//\r
22// This table is published at gEfiSmmEndOfDxeProtocolGuid notification, because\r
23// there should be no more SMM driver loaded after that. The EfiRuntimeServicesCode\r
24// region should not be changed any more.\r
25//\r
26// This table is published, if and only if all SMM PE/COFF have aligned section\r
27// as specified in UEFI specification Section 2.3. For example, IA32/X64 alignment is 4KiB.\r
28//\r
29// If this table is published, the EfiRuntimeServicesCode contains code only\r
30// and it is EFI_MEMORY_RO; the EfiRuntimeServicesData contains data only\r
31// and it is EFI_MEMORY_XP.\r
32//\r
33typedef struct {\r
1436aea4
MK
34 UINT32 Version;\r
35 UINT32 NumberOfEntries;\r
36 UINT32 DescriptorSize;\r
37 UINT32 Reserved;\r
38 // EFI_MEMORY_DESCRIPTOR Entry[1];\r
97d27604
JY
39} EDKII_PI_SMM_MEMORY_ATTRIBUTES_TABLE;\r
40\r
41#define EDKII_PI_SMM_MEMORY_ATTRIBUTES_TABLE_VERSION 0x00000001\r
42\r
1436aea4 43extern EFI_GUID gEdkiiPiSmmMemoryAttributesTableGuid;\r
97d27604
JY
44\r
45#endif\r