]> git.proxmox.com Git - mirror_edk2.git/blame - OvmfPkg/AcpiTables/Facp.aslc
OvmfPkg: fold macros of unsupported PM2 control reg. block into Facp.aslc
[mirror_edk2.git] / OvmfPkg / AcpiTables / Facp.aslc
CommitLineData
49ba9447 1/** @file\r
2 FACP Table\r
2712ab4f 3\r
8eb28fe7 4 Copyright (c) 2013, Red Hat, Inc.\r
ce68d3bc 5 Copyright (c) 2008 - 2012, Intel Corporation. All rights reserved.<BR>\r
56d7640a 6 This program and the accompanying materials are\r
49ba9447 7 licensed and made available under the terms and conditions of the BSD License\r
8 which accompanies this distribution. The full text of the license may be found at\r
9 http://opensource.org/licenses/bsd-license.php\r
2712ab4f 10\r
49ba9447 11 THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
12 WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
13\r
2712ab4f 14**/\r
15\r
49ba9447 16#include "Platform.h"\r
17\r
18EFI_ACPI_1_0_FIXED_ACPI_DESCRIPTION_TABLE FACP = {\r
ce68d3bc
SZ
19 {\r
20 EFI_ACPI_1_0_FIXED_ACPI_DESCRIPTION_TABLE_SIGNATURE,\r
21 sizeof (EFI_ACPI_1_0_FIXED_ACPI_DESCRIPTION_TABLE),\r
22 EFI_ACPI_1_0_FIXED_ACPI_DESCRIPTION_TABLE_REVISION,\r
23 0, // to make sum of entire table == 0\r
24 {EFI_ACPI_OEM_ID}, // OEMID is a 6 bytes long field\r
25 EFI_ACPI_OEM_TABLE_ID, // OEM table identification(8 bytes long)\r
26 EFI_ACPI_OEM_REVISION, // OEM revision number\r
27 EFI_ACPI_CREATOR_ID, // ASL compiler vendor ID\r
28 EFI_ACPI_CREATOR_REVISION // ASL compiler revision number\r
29 },\r
49ba9447 30 0, // Physical addesss of FACS\r
31 0, // Physical address of DSDT\r
32 INT_MODEL, // System Interrupt Model\r
33 RESERVED, // reserved\r
34 SCI_INT_VECTOR, // System vector of SCI interrupt\r
35 SMI_CMD_IO_PORT, // Port address of SMI command port\r
36 ACPI_ENABLE, // value to write to port smi_cmd to enable ACPI\r
37 ACPI_DISABLE, // value to write to port smi_cmd to disable ACPI\r
38 S4BIOS_REQ, // Value to write to SMI CMD port to enter the S4BIOS state\r
7c9ff57b 39 0, // PState control\r
49ba9447 40 PM1a_EVT_BLK, // Port address of Power Mgt 1a Event Reg Blk\r
8eb28fe7 41 0, // Power Mgt 1b Event Reg Blk unsupported\r
49ba9447 42 PM1a_CNT_BLK, // Port address of Power Mgt 1a Ctrl Reg Blk\r
8eb28fe7 43 0, // Power Mgt 1b Ctrl Reg Blk unsupported\r
1e69186a 44 0, // Power Mgt 2 Ctrl Reg Blk unsupported\r
49ba9447 45 PM_TMR_BLK, // Port address of Power Mgt Timer Ctrl Reg Blk\r
46 GPE0_BLK, // Port addr of General Purpose Event 0 Reg Blk\r
47 GPE1_BLK, // Port addr of General Purpose Event 1 Reg Blk\r
48 PM1_EVT_LEN, // Byte Length of ports at pm1X_evt_blk\r
49 PM1_CNT_LEN, // Byte Length of ports at pm1X_cnt_blk\r
1e69186a 50 0, // Power Mgt 2 Ctrl Reg Blk unsupported\r
49ba9447 51 PM_TM_LEN, // Byte Length of ports at pm_tm_blk\r
52 GPE0_BLK_LEN, // Byte Length of ports at gpe0_blk\r
53 GPE1_BLK_LEN, // Byte Length of ports at gpe1_blk\r
54 GPE1_BASE, // offset in gpe model where gpe1 events start\r
7c9ff57b 55 0, // _CST support\r
49ba9447 56 P_LVL2_LAT, // worst case HW latency to enter/exit C2 state\r
57 P_LVL3_LAT, // worst case HW latency to enter/exit C3 state\r
58 FLUSH_SIZE, // Size of area read to flush caches\r
59 FLUSH_STRIDE, // Stride used in flushing caches\r
60 DUTY_OFFSET, // bit location of duty cycle field in p_cnt reg\r
61 DUTY_WIDTH, // bit width of duty cycle field in p_cnt reg\r
62 DAY_ALRM, // index to day-of-month alarm in RTC CMOS RAM\r
63 MON_ALRM, // index to month-of-year alarm in RTC CMOS RAM\r
64 CENTURY, // index to century in RTC CMOS RAM\r
fb514792 65 0x00, // Boot architecture flag\r
49ba9447 66 0x00, // Boot architecture flag\r
2712ab4f 67 RESERVED, // reserved\r
49ba9447 68 FLAG\r
69};\r
70\r
71\r
72VOID*\r
73ReferenceAcpiTable (\r
74 VOID\r
75 )\r
76{\r
77 //\r
2712ab4f 78 // Reference the table being generated to prevent the optimizer from removing the\r
49ba9447 79 // data structure from the exeutable\r
80 //\r
81 return (VOID*)&FACP;\r
82}\r