1 /** @file 2 Definitions for data structures used in S3 resume. 3 4 Copyright (c) 2011, Intel Corporation. All rights reserved.<BR> 5 6 This program and the accompanying materials 7 are licensed and made available under the terms and conditions 8 of the BSD License which accompanies this distribution. The 9 full text of the license may be found at 10 http://opensource.org/licenses/bsd-license.php 11 12 THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 13 WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 14 15 **/ 16 17 #ifndef _ACPI_VARIABLE_COMPATIBILITY_H_ 18 #define _ACPI_VARIABLE_COMPATIBILITY_H_ 19 20 #define EFI_ACPI_VARIABLE_COMPATIBILITY_GUID \ 21 { \ 22 0xc020489e, 0x6db2, 0x4ef2, {0x9a, 0xa5, 0xca, 0x6, 0xfc, 0x11, 0xd3, 0x6a } \ 23 } 24 25 #define ACPI_GLOBAL_VARIABLE L"AcpiGlobalVariable" 26 27 extern EFI_GUID gEfiAcpiVariableCompatiblityGuid; 28 29 typedef struct { 30 BOOLEAN APState; 31 BOOLEAN S3BootPath; 32 EFI_PHYSICAL_ADDRESS WakeUpBuffer; 33 EFI_PHYSICAL_ADDRESS GdtrProfile; 34 EFI_PHYSICAL_ADDRESS IdtrProfile; 35 EFI_PHYSICAL_ADDRESS CpuPrivateData; 36 EFI_PHYSICAL_ADDRESS StackAddress; 37 EFI_PHYSICAL_ADDRESS MicrocodePointerBuffer; 38 EFI_PHYSICAL_ADDRESS SmramBase; 39 EFI_PHYSICAL_ADDRESS SmmStartImageBase; 40 UINT32 SmmStartImageSize; 41 UINT32 NumberOfCpus; 42 } ACPI_CPU_DATA_COMPATIBILITY; 43 44 typedef struct { 45 // 46 // Acpi Related variables 47 // 48 EFI_PHYSICAL_ADDRESS AcpiReservedMemoryBase; 49 UINT32 AcpiReservedMemorySize; 50 EFI_PHYSICAL_ADDRESS S3ReservedLowMemoryBase; 51 EFI_PHYSICAL_ADDRESS AcpiBootScriptTable; 52 EFI_PHYSICAL_ADDRESS RuntimeScriptTableBase; 53 EFI_PHYSICAL_ADDRESS AcpiFacsTable; 54 UINT64 SystemMemoryLength; 55 ACPI_CPU_DATA_COMPATIBILITY AcpiCpuData; 56 // 57 // VGA OPROM to support Video Re-POST for Linux S3 58 // 59 EFI_PHYSICAL_ADDRESS VideoOpromAddress; 60 UINT32 VideoOpromSize; 61 62 // 63 // S3 Debug extension 64 // 65 EFI_PHYSICAL_ADDRESS S3DebugBufferAddress; 66 EFI_PHYSICAL_ADDRESS S3ResumeNvsEntryPoint; 67 } ACPI_VARIABLE_SET_COMPATIBILITY; 68 69 #endif 70