]>
Commit | Line | Data |
---|---|---|
79964ac8 | 1 | /** @file\r |
444bf90d | 2 | Definition of GUIDed HOB for reserving SMRAM regions.\r |
3 | \r | |
4 | This file defines:\r | |
5 | * the GUID used to identify the GUID HOB for reserving SMRAM regions.\r | |
6 | * the data structure of SMRAM descriptor to describe SMRAM candidate regions\r | |
7 | * values of state of SMRAM candidate regions\r | |
8 | * the GUID specific data structure of HOB for reserving SMRAM regions.\r | |
9 | This GUIDed HOB can be used to convey the existence of the T-SEG reservation and H-SEG usage\r | |
79964ac8 | 10 | \r |
1c2f052d LG |
11 | Copyright (c) 2007 - 2018, Intel Corporation. All rights reserved.<BR>\r |
12 | This program and the accompanying materials are licensed and made available under\r | |
13 | the terms and conditions of the BSD License that accompanies this distribution.\r | |
f22f941e | 14 | The full text of the license may be found at\r |
1c2f052d LG |
15 | http://opensource.org/licenses/bsd-license.php.\r |
16 | \r | |
17 | THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r | |
f22f941e | 18 | WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r |
79964ac8 | 19 | \r |
79964ac8 | 20 | @par Revision Reference:\r |
f22f941e | 21 | GUIDs defined in SmmCis spec version 0.9.\r |
79964ac8 | 22 | \r |
23 | **/\r | |
24 | \r | |
25 | #ifndef _EFI_SMM_PEI_SMRAM_MEMORY_RESERVE_H_\r | |
26 | #define _EFI_SMM_PEI_SMRAM_MEMORY_RESERVE_H_\r | |
27 | \r | |
28 | #define EFI_SMM_PEI_SMRAM_MEMORY_RESERVE \\r | |
29 | { \\r | |
30 | 0x6dadf1d1, 0xd4cc, 0x4910, {0xbb, 0x6e, 0x82, 0xb1, 0xfd, 0x80, 0xff, 0x3d } \\r | |
31 | }\r | |
32 | \r | |
ab6fc27a | 33 | /**\r |
34 | * GUID specific data structure of HOB for reserving SMRAM regions.\r | |
35 | *\r | |
1c2f052d | 36 | * Inconsistent with specification here:\r |
ab6fc27a | 37 | * EFI_HOB_SMRAM_DESCRIPTOR_BLOCK has been changed to EFI_SMRAM_HOB_DESCRIPTOR_BLOCK.\r |
38 | * This inconsistency is kept in code in order for backward compatibility.\r | |
39 | **/\r | |
79964ac8 | 40 | typedef struct {\r |
444bf90d | 41 | ///\r |
42 | /// Designates the number of possible regions in the system\r | |
1c2f052d | 43 | /// that can be usable for SMRAM.\r |
444bf90d | 44 | ///\r |
1c2f052d | 45 | /// Inconsistent with specification here:\r |
7ae58ec2 | 46 | /// In Framework SMM CIS 0.91 specification, it defines the field type as UINTN.\r |
47 | /// However, HOBs are supposed to be CPU neutral, so UINT32 should be used instead.\r | |
48 | ///\r | |
49 | UINT32 NumberOfSmmReservedRegions;\r | |
444bf90d | 50 | ///\r |
51 | /// Used throughout this protocol to describe the candidate\r | |
1c2f052d | 52 | /// regions for SMRAM that are supported by this platform.\r |
444bf90d | 53 | ///\r |
79964ac8 | 54 | EFI_SMRAM_DESCRIPTOR Descriptor[1];\r |
a5baf845 | 55 | } EFI_SMRAM_HOB_DESCRIPTOR_BLOCK;\r |
79964ac8 | 56 | \r |
57 | extern EFI_GUID gEfiSmmPeiSmramMemoryReserveGuid;\r | |
58 | \r | |
59 | #endif\r | |
ab6fc27a | 60 | \r |