Commit | Line | Data |
---|---|---|
2c868eef SV |
1 | /** @file\r |
2 | Definition of GUIDed HOB for reserving MMRAM regions.\r | |
3 | \r | |
4 | This file defines:\r | |
5 | * the GUID used to identify the GUID HOB for reserving MMRAM regions.\r | |
6 | * the data structure of MMRAM descriptor to describe MMRAM candidate regions\r | |
7 | * values of state of MMRAM candidate regions\r | |
8 | * the GUID specific data structure of HOB for reserving MMRAM regions.\r | |
9 | This GUIDed HOB can be used to convey the existence of the T-SEG reservation and H-SEG usage\r | |
10 | \r | |
11 | Copyright (c) 2007 - 2010, Intel Corporation. All rights reserved.<BR>\r | |
12 | Copyright (c) 2016 - 2018, ARM Limited. All rights reserved.<BR>\r | |
13 | \r | |
86094561 | 14 | SPDX-License-Identifier: BSD-2-Clause-Patent\r |
2c868eef SV |
15 | \r |
16 | @par Revision Reference:\r | |
17 | GUIDs defined in MmCis spec version 0.9.\r | |
18 | \r | |
19 | **/\r | |
20 | \r | |
21 | #ifndef _EFI_MM_PEI_MMRAM_MEMORY_RESERVE_H_\r | |
22 | #define _EFI_MM_PEI_MMRAM_MEMORY_RESERVE_H_\r | |
23 | \r | |
24 | #define EFI_MM_PEI_MMRAM_MEMORY_RESERVE \\r | |
25 | { \\r | |
26 | 0x0703f912, 0xbf8d, 0x4e2a, {0xbe, 0x07, 0xab, 0x27, 0x25, 0x25, 0xc5, 0x92 } \\r | |
27 | }\r | |
28 | \r | |
29 | /**\r | |
30 | * GUID specific data structure of HOB for reserving MMRAM regions.\r | |
31 | *\r | |
32 | * Inconsistent with specification here:\r | |
33 | * EFI_HOB_MMRAM_DESCRIPTOR_BLOCK has been changed to EFI_MMRAM_HOB_DESCRIPTOR_BLOCK.\r | |
34 | * This inconsistency is kept in code in order for backward compatibility.\r | |
35 | **/\r | |
36 | typedef struct {\r | |
37 | ///\r | |
38 | /// Designates the number of possible regions in the system\r | |
39 | /// that can be usable for MMRAM.\r | |
40 | ///\r | |
41 | /// Inconsistent with specification here:\r | |
42 | /// In Framework MM CIS 0.91 specification, it defines the field type as UINTN.\r | |
43 | /// However, HOBs are supposed to be CPU neutral, so UINT32 should be used instead.\r | |
44 | ///\r | |
91415a36 | 45 | UINT32 NumberOfMmReservedRegions;\r |
2c868eef SV |
46 | ///\r |
47 | /// Used throughout this protocol to describe the candidate\r | |
48 | /// regions for MMRAM that are supported by this platform.\r | |
49 | ///\r | |
91415a36 | 50 | EFI_MMRAM_DESCRIPTOR Descriptor[1];\r |
2c868eef SV |
51 | } EFI_MMRAM_HOB_DESCRIPTOR_BLOCK;\r |
52 | \r | |
91415a36 | 53 | extern EFI_GUID gEfiMmPeiSmramMemoryReserveGuid;\r |
2c868eef SV |
54 | \r |
55 | #endif\r |