]> git.proxmox.com Git - mirror_edk2.git/blame - DuetPkg/Include/Guid/AcpiDescription.h
Initialize DuetPkg ...
[mirror_edk2.git] / DuetPkg / Include / Guid / AcpiDescription.h
CommitLineData
ca162103 1/*++\r
2\r
3Copyright (c) 2006 - 2007, Intel Corporation \r
4All rights reserved. This program and the accompanying materials \r
5are licensed and made available under the terms and conditions of the BSD License \r
6which accompanies this distribution. The full text of the license may be found at \r
7http://opensource.org/licenses/bsd-license.php \r
8 \r
9THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, \r
10WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. \r
11\r
12Module Name:\r
13 \r
14 AcpiDescription.h\r
15 \r
16Abstract:\r
17\r
18\r
19 GUIDs used for ACPI Description\r
20\r
21--*/\r
22\r
23#ifndef _EFI_ACPI_DESCRIPTION_H_\r
24#define _EFI_ACPI_DESCRIPTION_H_\r
25\r
26#define EFI_ACPI_DESCRIPTION_GUID \\r
27 { \\r
28 0x3c699197, 0x93c, 0x4c69, 0xb0, 0x6b, 0x12, 0x8a, 0xe3, 0x48, 0x1d, 0xc9 \\r
29 }\r
30\r
31typedef struct {\r
32 UINT8 AddressSpaceId;\r
33 UINT8 RegisterBitWidth;\r
34 UINT8 RegisterBitOffset;\r
35 UINT8 AccessSize;\r
36 UINT64 Address;\r
37} EFI_ACPI_GENERIC_ADDRESS_STRUCTURE;\r
38\r
39#define ACPI_ADDRESS_ID_MEMORY 0\r
40#define ACPI_ADDRESS_ID_IO 1\r
41#define ACPI_ADDRESS_ID_PCI 2\r
42#define ACPI_ADDRESS_ID_EC 3\r
43#define ACPI_ADDRESS_ID_SMBUS 4\r
44\r
45#define ACPI_ADDRESS_ACCESS_ANY 0\r
46#define ACPI_ADDRESS_ACCESS_BYTE 1\r
47#define ACPI_ADDRESS_ACCESS_WORD 2\r
48#define ACPI_ADDRESS_ACCESS_DWORD 3\r
49#define ACPI_ADDRESS_ACCESS_QWORD 4\r
50\r
51//\r
52// Following structure defines ACPI Description information.\r
53// This information is platform specific, may be consumed by DXE generic driver.\r
54//\r
55#pragma pack(1)\r
56typedef struct _EFI_ACPI_DESCRIPTION {\r
57 //\r
58 // For Timer\r
59 //\r
60 EFI_ACPI_GENERIC_ADDRESS_STRUCTURE PM_TMR_BLK;\r
61 UINT8 PM_TMR_LEN;\r
62 UINT8 TMR_VAL_EXT;\r
63\r
64 //\r
65 // For RTC\r
66 //\r
67 UINT8 DAY_ALRM;\r
68 UINT8 MON_ALRM;\r
69 UINT8 CENTURY;\r
70\r
71 //\r
72 // For Reset\r
73 //\r
74 EFI_ACPI_GENERIC_ADDRESS_STRUCTURE RESET_REG;\r
75 UINT8 RESET_VALUE;\r
76\r
77 //\r
78 // For Shutdown\r
79 //\r
80 EFI_ACPI_GENERIC_ADDRESS_STRUCTURE PM1a_EVT_BLK;\r
81 EFI_ACPI_GENERIC_ADDRESS_STRUCTURE PM1b_EVT_BLK;\r
82 EFI_ACPI_GENERIC_ADDRESS_STRUCTURE PM1a_CNT_BLK;\r
83 EFI_ACPI_GENERIC_ADDRESS_STRUCTURE PM1b_CNT_BLK;\r
84 EFI_ACPI_GENERIC_ADDRESS_STRUCTURE PM2_CNT_BLK;\r
85 UINT8 PM1_EVT_LEN;\r
86 UINT8 PM1_CNT_LEN;\r
87 UINT8 PM2_CNT_LEN;\r
88 UINT8 SLP_TYPa;\r
89 UINT8 SLP_TYPb;\r
90\r
91 //\r
92 // For sleep\r
93 //\r
94 UINT8 SLP1_TYPa;\r
95 UINT8 SLP1_TYPb;\r
96 UINT8 SLP2_TYPa;\r
97 UINT8 SLP2_TYPb;\r
98 UINT8 SLP3_TYPa;\r
99 UINT8 SLP3_TYPb;\r
100 UINT8 SLP4_TYPa;\r
101 UINT8 SLP4_TYPb;\r
102\r
103 //\r
104 // GPE\r
105 //\r
106 EFI_ACPI_GENERIC_ADDRESS_STRUCTURE GPE0_BLK;\r
107 EFI_ACPI_GENERIC_ADDRESS_STRUCTURE GPE1_BLK;\r
108 UINT8 GPE0_BLK_LEN;\r
109 UINT8 GPE1_BLK_LEN;\r
110 UINT8 GPE1_BASE;\r
111\r
112 //\r
113 // IAPC Boot Arch\r
114 //\r
115 UINT16 IAPC_BOOT_ARCH;\r
116\r
117 //\r
118 // Flags\r
119 //\r
120 UINT32 Flags;\r
121\r
122} EFI_ACPI_DESCRIPTION;\r
123#pragma pack()\r
124\r
125extern EFI_GUID gEfiAcpiDescriptionGuid;\r
126\r
127#endif\r