VirtualBox

source: vbox/trunk/src/VBox/Devices/EFI/FirmwareNew/MdeModulePkg/Include/Guid/AcpiS3Context.h@ 105670

Last change on this file since 105670 was 105670, checked in by vboxsync, 4 months ago

Devices/EFI/FirmwareNew: Merge edk2-stable-202405 and make it build on aarch64, bugref:4643

  • Property svn:eol-style set to native
File size: 1.8 KB
Line 
1/** @file
2 Definitions for data structures used in S3 resume.
3
4Copyright (c) 2011 - 2023, Intel Corporation. All rights reserved.<BR>
5
6SPDX-License-Identifier: BSD-2-Clause-Patent
7
8**/
9
10#ifndef _ACPI_S3_DATA_H_
11#define _ACPI_S3_DATA_H_
12
13#include <Library/BaseLib.h>
14
15#define SMM_S3_RESUME_SMM_32 SIGNATURE_64 ('S','M','M','S','3','_','3','2')
16#define SMM_S3_RESUME_SMM_64 SIGNATURE_64 ('S','M','M','S','3','_','6','4')
17
18#pragma pack(1)
19
20typedef struct {
21 UINT64 Signature;
22 EFI_PHYSICAL_ADDRESS SmmS3ResumeEntryPoint;
23 EFI_PHYSICAL_ADDRESS SmmS3StackBase;
24 UINT64 SmmS3StackSize;
25 UINT64 SmmS3Cr0;
26 UINT64 SmmS3Cr3;
27 UINT64 SmmS3Cr4;
28 UINT16 ReturnCs;
29 EFI_PHYSICAL_ADDRESS ReturnEntryPoint;
30 EFI_PHYSICAL_ADDRESS ReturnContext1;
31 EFI_PHYSICAL_ADDRESS ReturnContext2;
32 EFI_PHYSICAL_ADDRESS ReturnStackPointer;
33 EFI_PHYSICAL_ADDRESS MpService2Ppi;
34 EFI_PHYSICAL_ADDRESS Smst;
35} SMM_S3_RESUME_STATE;
36
37typedef struct {
38 EFI_PHYSICAL_ADDRESS AcpiFacsTable;
39 EFI_PHYSICAL_ADDRESS IdtrProfile;
40 EFI_PHYSICAL_ADDRESS S3NvsPageTableAddress;
41 EFI_PHYSICAL_ADDRESS BootScriptStackBase;
42 UINT64 BootScriptStackSize;
43 EFI_PHYSICAL_ADDRESS S3DebugBufferAddress;
44} ACPI_S3_CONTEXT;
45
46typedef struct {
47 UINT16 ReturnCs;
48 UINT64 ReturnStatus;
49 EFI_PHYSICAL_ADDRESS ReturnEntryPoint;
50 EFI_PHYSICAL_ADDRESS ReturnStackPointer;
51 EFI_PHYSICAL_ADDRESS AsmTransferControl;
52 IA32_DESCRIPTOR Idtr;
53} PEI_S3_RESUME_STATE;
54
55#pragma pack()
56
57#define EFI_ACPI_S3_CONTEXT_GUID \
58 { \
59 0xef98d3a, 0x3e33, 0x497a, {0xa4, 0x1, 0x77, 0xbe, 0x3e, 0xb7, 0x4f, 0x38} \
60 }
61
62extern EFI_GUID gEfiAcpiS3ContextGuid;
63
64extern EFI_GUID gEfiAcpiVariableGuid;
65
66#endif
Note: See TracBrowser for help on using the repository browser.

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette