]> git.proxmox.com Git - mirror_edk2.git/blame - Vlv2TbltDevicePkg/Include/AlertStandardFormatTable.h
MdePkg/PeiServicesLib.c: Change comments of PeiServicesResetSystem2
[mirror_edk2.git] / Vlv2TbltDevicePkg / Include / AlertStandardFormatTable.h
CommitLineData
3cbfba02
DW
1/*++\r
2\r
3 Copyright (c) 2004 - 2014, Intel Corporation. All rights reserved.<BR>\r
4 \r\r
9dc8036d
MK
5 SPDX-License-Identifier: BSD-2-Clause-Patent\r
6\r
3cbfba02
DW
7 \r\r
8\r
9Module Name:\r
10\r
11 AlertStandardFormatTable.h\r
12\r
13Abstract:\r
14\r
15 ACPI Alert Standard Format Description Table ASF! as described\r
16 in the ASF2.0 Specification\r
17\r
18--*/\r
19\r
20#ifndef _ALERT_STANDARD_FORMAT_TABLE_H\r
21#define _ALERT_STANDARD_FORMAT_TABLE_H\r
22\r
23#include <IndustryStandard/Acpi20.h>\r
24\r
25//\r
26// Ensure proper structure formats.\r
27//\r
28#pragma pack (1)\r
29\r
30//\r
31// Information Record header that appears at the beginning of each record.\r
32//\r
33typedef struct {\r
34 UINT8 Type;\r
35 UINT8 Reserved;\r
36 UINT16 RecordLength;\r
37} EFI_ACPI_ASF_RECORD_HEADER;\r
38\r
39//\r
40// This structure contains information that identifies the system type\r
41// and configuration.\r
42//\r
43typedef struct {\r
44 EFI_ACPI_ASF_RECORD_HEADER RecordHeader;\r
45 UINT8 MinWatchDogResetValue;\r
46 UINT8 MinPollingInterval;\r
47 UINT16 SystemID;\r
48 UINT32 IANAManufactureID;\r
49 UINT8 FeatureFlags;\r
50 UINT8 Reserved[3];\r
51} EFI_ACPI_ASF_INFO;\r
52\r
53//\r
54// Alert sensors definition.\r
55//\r
56#define ASF_ALRT_SENSOR_ARRAY_LENGTH 36\r
57\r
58typedef struct {\r
59 EFI_ACPI_ASF_RECORD_HEADER RecordHeader;\r
60 UINT8 AssertionEventBitMask;\r
61 UINT8 DeassertionEventBitMask;\r
62 UINT8 NumberOfAlerts;\r
63 UINT8 ArrayElementLength;\r
64 UINT8 DeviceArray[ASF_ALRT_SENSOR_ARRAY_LENGTH];\r
65} EFI_ACPI_ASF_ALRT;\r
66\r
67//\r
68// Alert Remote Control System Actions.\r
69//\r
70#define ASF_RCTL_DEVICES_ARRAY_LENGTH 16\r
71\r
72typedef struct {\r
73 EFI_ACPI_ASF_RECORD_HEADER RecordHeader;\r
74 UINT8 NumberOfControls;\r
75 UINT8 ArrayElementLength;\r
76 UINT16 RctlReserved;\r
77 UINT8 ControlArray[ASF_RCTL_DEVICES_ARRAY_LENGTH];\r
78} EFI_ACPI_ASF_RCTL;\r
79\r
80//\r
81// Remote Control Capabilities.\r
82//\r
83typedef struct {\r
84 EFI_ACPI_ASF_RECORD_HEADER RecordHeader;\r
85 UINT8 RemoteControlCapabilities[7];\r
86 UINT8 RMCPCompletionCode;\r
87 UINT32 RMCPIANA;\r
88 UINT8 RMCPSpecialCommand;\r
89 UINT8 RMCPSpecialCommandParameter[2];\r
90 UINT8 RMCPBootOptions[2];\r
91 UINT8 RMCPOEMParameters[2];\r
92} EFI_ACPI_ASF_RMCP;\r
93\r
94//\r
95// SMBus Devices with fixed addresses.\r
96//\r
97#define ASF_ADDR_DEVICE_ARRAY_LENGTH 16\r
98\r
99typedef struct {\r
100 EFI_ACPI_ASF_RECORD_HEADER RecordHeader;\r
101 UINT8 SEEPROMAddress;\r
102 UINT8 NumberOfDevices;\r
103 UINT8 FixedSmbusAddresses[ASF_ADDR_DEVICE_ARRAY_LENGTH];\r
104} EFI_ACPI_ASF_ADDR;\r
105\r
106typedef struct {\r
107 EFI_ACPI_DESCRIPTION_HEADER Header;\r
108 EFI_ACPI_ASF_INFO AsfInfo;\r
109 EFI_ACPI_ASF_ALRT AsfAlert;\r
110 EFI_ACPI_ASF_RCTL AsfRctl;\r
111 EFI_ACPI_ASF_RMCP AsfRmcp;\r
112 EFI_ACPI_ASF_ADDR AsfAddr;\r
113} EFI_ACPI_1_0_ASF_DESCRIPTION_TABLE;\r
114\r
115//\r
116// "ASF!" ASF Description Table Signature.\r
117//\r
118#define EFI_ACPI_1_0_ASF_DESCRIPTION_TABLE_SIGNATURE 0x21465341\r
119\r
120#pragma pack ()\r
121\r
122#endif // _ALERT_STANDARD_FORMAT_TABLE_H\r