]> git.proxmox.com Git - mirror_edk2.git/blame - MdeModulePkg/Include/Guid/AcpiS3Context.h
MdeModulePkg: Clean up source files
[mirror_edk2.git] / MdeModulePkg / Include / Guid / AcpiS3Context.h
CommitLineData
1261fe23 1/** @file\r
2 Definitions for data structures used in S3 resume.\r
3\r
d1102dba 4Copyright (c) 2011 - 2018, Intel Corporation. All rights reserved.<BR>\r
1261fe23 5\r
6This program and the accompanying materials\r
7are licensed and made available under the terms and conditions\r
8of the BSD License which accompanies this distribution. The\r
9full text of the license may be found at\r
10http://opensource.org/licenses/bsd-license.php\r
11\r
12THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
13WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
14\r
15**/\r
16\r
17#ifndef _ACPI_S3_DATA_H_\r
18#define _ACPI_S3_DATA_H_\r
19\r
20#include <Library/BaseLib.h>\r
21\r
22#define SMM_S3_RESUME_SMM_32 SIGNATURE_64 ('S','M','M','S','3','_','3','2')\r
23#define SMM_S3_RESUME_SMM_64 SIGNATURE_64 ('S','M','M','S','3','_','6','4')\r
24\r
37623a5c 25#pragma pack(1)\r
26\r
1261fe23 27typedef struct {\r
28 UINT64 Signature;\r
29 EFI_PHYSICAL_ADDRESS SmmS3ResumeEntryPoint;\r
30 EFI_PHYSICAL_ADDRESS SmmS3StackBase;\r
31 UINT64 SmmS3StackSize;\r
32 UINT64 SmmS3Cr0;\r
33 UINT64 SmmS3Cr3;\r
34 UINT64 SmmS3Cr4;\r
35 UINT16 ReturnCs;\r
36 EFI_PHYSICAL_ADDRESS ReturnEntryPoint;\r
37 EFI_PHYSICAL_ADDRESS ReturnContext1;\r
38 EFI_PHYSICAL_ADDRESS ReturnContext2;\r
39 EFI_PHYSICAL_ADDRESS ReturnStackPointer;\r
40 EFI_PHYSICAL_ADDRESS Smst;\r
41} SMM_S3_RESUME_STATE;\r
42\r
43\r
44typedef struct {\r
45 EFI_PHYSICAL_ADDRESS AcpiFacsTable;\r
46 EFI_PHYSICAL_ADDRESS IdtrProfile;\r
47 EFI_PHYSICAL_ADDRESS S3NvsPageTableAddress;\r
48 EFI_PHYSICAL_ADDRESS BootScriptStackBase;\r
49 UINT64 BootScriptStackSize;\r
d1102dba 50 EFI_PHYSICAL_ADDRESS S3DebugBufferAddress;\r
1261fe23 51} ACPI_S3_CONTEXT;\r
52\r
53typedef struct {\r
54 UINT16 ReturnCs;\r
37623a5c 55 UINT64 ReturnStatus;\r
1261fe23 56 EFI_PHYSICAL_ADDRESS ReturnEntryPoint;\r
57 EFI_PHYSICAL_ADDRESS ReturnStackPointer;\r
58 EFI_PHYSICAL_ADDRESS AsmTransferControl;\r
59 IA32_DESCRIPTOR Idtr;\r
60} PEI_S3_RESUME_STATE;\r
61\r
37623a5c 62#pragma pack()\r
63\r
1261fe23 64#define EFI_ACPI_S3_CONTEXT_GUID \\r
65 { \\r
66 0xef98d3a, 0x3e33, 0x497a, {0xa4, 0x1, 0x77, 0xbe, 0x3e, 0xb7, 0x4f, 0x38} \\r
67 }\r
68\r
69extern EFI_GUID gEfiAcpiS3ContextGuid;\r
70\r
71extern EFI_GUID gEfiAcpiVariableGuid;\r
72\r
73#endif\r