]> git.proxmox.com Git - mirror_edk2.git/blobdiff - OvmfPkg/AcpiTables/Facp.aslc
OvmfPkg: upgrade the FADT to ACPI 2.0 without functional changes
[mirror_edk2.git] / OvmfPkg / AcpiTables / Facp.aslc
index 2aec355d9f13121e01568d6a9741496668100a6f..9a17905c44382fd1a6ae461849929b85800cd547 100644 (file)
 \r
 #include "Platform.h"\r
 \r
-EFI_ACPI_1_0_FIXED_ACPI_DESCRIPTION_TABLE FACP = {\r
+EFI_ACPI_2_0_FIXED_ACPI_DESCRIPTION_TABLE FACP = {\r
   {\r
-    EFI_ACPI_1_0_FIXED_ACPI_DESCRIPTION_TABLE_SIGNATURE,\r
-    sizeof (EFI_ACPI_1_0_FIXED_ACPI_DESCRIPTION_TABLE),\r
-    EFI_ACPI_1_0_FIXED_ACPI_DESCRIPTION_TABLE_REVISION,\r
+    EFI_ACPI_2_0_FIXED_ACPI_DESCRIPTION_TABLE_SIGNATURE,\r
+    sizeof (EFI_ACPI_2_0_FIXED_ACPI_DESCRIPTION_TABLE),\r
+    EFI_ACPI_2_0_FIXED_ACPI_DESCRIPTION_TABLE_REVISION,\r
     0,                          // to make sum of entire table == 0\r
     {EFI_ACPI_OEM_ID},          // OEMID is a 6 bytes long field\r
     EFI_ACPI_OEM_TABLE_ID,      // OEM table identification(8 bytes long)\r
@@ -29,8 +29,8 @@ EFI_ACPI_1_0_FIXED_ACPI_DESCRIPTION_TABLE FACP = {
   },\r
   0,                // Physical addesss of FACS\r
   0,                // Physical address of DSDT\r
-  INT_MODEL,        // System Interrupt Model\r
-  RESERVED,         // reserved\r
+  RESERVED,         // System Interrupt Model in ACPI 1.0, eliminated in 2.0\r
+  EFI_ACPI_2_0_PM_PROFILE_UNSPECIFIED, // Preferred PM profile\r
   SCI_INT_VECTOR,   // System vector of SCI interrupt\r
   SMI_CMD_IO_PORT,  // Port address of SMI command port\r
   ACPI_ENABLE,      // value to write to port smi_cmd to enable ACPI\r
@@ -62,10 +62,23 @@ EFI_ACPI_1_0_FIXED_ACPI_DESCRIPTION_TABLE FACP = {
   DAY_ALRM,         // index to day-of-month alarm in RTC CMOS RAM\r
   MON_ALRM,         // index to month-of-year alarm in RTC CMOS RAM\r
   CENTURY,          // index to century in RTC CMOS RAM\r
-  0x00,             // Boot architecture flag\r
-  0x00,             // Boot architecture flag\r
+  0x0000,           // Boot architecture flag (16-bit)\r
   RESERVED,         // reserved\r
-  FLAG\r
+  FLAG,             // Fixed feature flags\r
+  { 0 },            // Address of the Reset Register\r
+  0,                // Value for the Reset Register to reset the system\r
+  { RESERVED },     // reserved[3]\r
+  0,                // 64-bit physical addesss of FACS, set at installation\r
+  0,                // 64-bit physical addesss of DSDT, set at installation\r
+\r
+  GAS2_IO(PM1a_EVT_BLK, PM1_EVT_LEN), // Ext. addr. of PM 1a Event Reg Blk\r
+  { 0 },                              // PM 1b Event Reg Blk unsupported\r
+  GAS2_IO(PM1a_CNT_BLK, PM1_CNT_LEN), // Ext. addr. of PM 1a Ctrl Reg Blk\r
+  { 0 },                              // PM 1b Ctrl Reg Blk unsupported\r
+  { 0 },                              // PM 2  Ctrl Reg Blk unsupported\r
+  GAS2_IO(PM_TMR_BLK, PM_TM_LEN),     // Ext. addr. of PM Timer Ctrl Reg Blk\r
+  GAS2_IO(GPE0_BLK, GPE0_BLK_LEN),    // Ext. addr. of GPE 0 Reg Blk\r
+  { 0 }                               // GPE 1 Reg Blk unsupported\r
 };\r
 \r
 \r