]>
Commit | Line | Data |
---|---|---|
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 | |
5 | Copyright (c) 2016, Intel Corporation. All rights reserved.<BR>\r | |
6 | This program and the accompanying materials are licensed and made available under\r | |
7 | the terms and conditions of the BSD License that accompanies this distribution.\r | |
8 | The full text of the license may be found at\r | |
9 | http://opensource.org/licenses/bsd-license.php.\r | |
10 | \r | |
11 | THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r | |
12 | WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r | |
13 | \r | |
14 | **/\r | |
15 | \r | |
16 | #ifndef _PI_SMM_MEMORY_ATTRIBUTES_TABLE_H_\r | |
17 | #define _PI_SMM_MEMORY_ATTRIBUTES_TABLE_H_\r | |
18 | \r | |
19 | #define EDKII_PI_SMM_MEMORY_ATTRIBUTES_TABLE_GUID {\\r | |
20 | 0x6b9fd3f7, 0x16df, 0x45e8, {0xbd, 0x39, 0xb9, 0x4a, 0x66, 0x54, 0x1a, 0x5d} \\r | |
21 | }\r | |
22 | \r | |
23 | //\r | |
24 | // The PI SMM memory attribute table contains the SMM memory map for SMM image.\r | |
25 | //\r | |
26 | // This table is installed to SMST as SMM configuration table.\r | |
27 | //\r | |
28 | // This table is published at gEfiSmmEndOfDxeProtocolGuid notification, because\r | |
29 | // there should be no more SMM driver loaded after that. The EfiRuntimeServicesCode\r | |
30 | // region should not be changed any more.\r | |
31 | //\r | |
32 | // This table is published, if and only if all SMM PE/COFF have aligned section\r | |
33 | // as specified in UEFI specification Section 2.3. For example, IA32/X64 alignment is 4KiB.\r | |
34 | //\r | |
35 | // If this table is published, the EfiRuntimeServicesCode contains code only\r | |
36 | // and it is EFI_MEMORY_RO; the EfiRuntimeServicesData contains data only\r | |
37 | // and it is EFI_MEMORY_XP.\r | |
38 | //\r | |
39 | typedef struct {\r | |
40 | UINT32 Version;\r | |
41 | UINT32 NumberOfEntries;\r | |
42 | UINT32 DescriptorSize;\r | |
43 | UINT32 Reserved;\r | |
44 | //EFI_MEMORY_DESCRIPTOR Entry[1];\r | |
45 | } EDKII_PI_SMM_MEMORY_ATTRIBUTES_TABLE;\r | |
46 | \r | |
47 | #define EDKII_PI_SMM_MEMORY_ATTRIBUTES_TABLE_VERSION 0x00000001\r | |
48 | \r | |
49 | extern EFI_GUID gEdkiiPiSmmMemoryAttributesTableGuid;\r | |
50 | \r | |
51 | #endif\r |