mirror of
https://github.com/reactos/reactos.git
synced 2025-05-06 18:31:26 +00:00
[SDK:REACTOS] acpi.h: Update FACS and FADT types to ACPI v6.4 (#6042)
- FACS: Reduce size by 1 char.
- FADT: Add 3 new fields.
- Update reserved fields. Use offsets.
- Improve documentation.
Addendum to 0331781
(r46610).
This commit is contained in:
parent
abe20f6120
commit
ee5ff8ce0c
1 changed files with 24 additions and 8 deletions
|
@ -79,20 +79,23 @@ typedef struct _GEN_ADDR
|
||||||
//
|
//
|
||||||
typedef struct _RSDP
|
typedef struct _RSDP
|
||||||
{
|
{
|
||||||
|
// ACPI v1.0 (Rev=0)
|
||||||
ULONGLONG Signature;
|
ULONGLONG Signature;
|
||||||
UCHAR Checksum;
|
UCHAR Checksum;
|
||||||
UCHAR OEMID[6];
|
UCHAR OEMID[6];
|
||||||
UCHAR Revision;
|
UCHAR Revision; // Was reserved before ACPI v2.0 (Rev=2).
|
||||||
ULONG RsdtAddress;
|
ULONG RsdtAddress;
|
||||||
|
// ACPI v2.0 (Rev=2)
|
||||||
ULONG Length;
|
ULONG Length;
|
||||||
PHYSICAL_ADDRESS XsdtAddress;
|
PHYSICAL_ADDRESS XsdtAddress;
|
||||||
UCHAR XChecksum;
|
UCHAR XChecksum;
|
||||||
UCHAR Reserved[3];
|
UCHAR Reserved33[3];
|
||||||
} RSDP;
|
} RSDP;
|
||||||
typedef RSDP *PRSDP;
|
typedef RSDP *PRSDP;
|
||||||
|
|
||||||
typedef struct _DESCRIPTION_HEADER
|
typedef struct _DESCRIPTION_HEADER
|
||||||
{
|
{
|
||||||
|
// ACPI v1.0
|
||||||
ULONG Signature;
|
ULONG Signature;
|
||||||
ULONG Length;
|
ULONG Length;
|
||||||
UCHAR Revision;
|
UCHAR Revision;
|
||||||
|
@ -107,24 +110,28 @@ typedef DESCRIPTION_HEADER *PDESCRIPTION_HEADER;
|
||||||
|
|
||||||
typedef struct _FACS
|
typedef struct _FACS
|
||||||
{
|
{
|
||||||
|
// ACPI v1.0 (Ver=0)
|
||||||
ULONG Signature;
|
ULONG Signature;
|
||||||
ULONG Length;
|
ULONG Length;
|
||||||
ULONG HardwareSignature;
|
ULONG HardwareSignature;
|
||||||
ULONG pFirmwareWakingVector;
|
ULONG pFirmwareWakingVector;
|
||||||
ULONG GlobalLock;
|
ULONG GlobalLock;
|
||||||
ULONG Flags;
|
ULONG Flags;
|
||||||
PHYSICAL_ADDRESS x_FirmwareWakingVector;
|
PHYSICAL_ADDRESS x_FirmwareWakingVector; // Was reserved before ACPI v2.0 (Ver=1).
|
||||||
UCHAR version;
|
UCHAR Version; // Was reserved before ACPI v2.0 (Ver=1).
|
||||||
UCHAR Reserved[32];
|
UCHAR Reserved33[3];
|
||||||
|
ULONG OsFlags; // Was reserved before ACPI v4.0 (Ver=2).
|
||||||
|
UCHAR Reserved40[24];
|
||||||
} FACS;
|
} FACS;
|
||||||
typedef FACS *PFACS;
|
typedef FACS *PFACS;
|
||||||
|
|
||||||
typedef struct _FADT
|
typedef struct _FADT
|
||||||
{
|
{
|
||||||
|
// ACPI v1.0 (H.Rev=1)
|
||||||
DESCRIPTION_HEADER Header;
|
DESCRIPTION_HEADER Header;
|
||||||
ULONG facs;
|
ULONG facs;
|
||||||
ULONG dsdt;
|
ULONG dsdt;
|
||||||
UCHAR int_model;
|
UCHAR reserved44[1]; // Was int_model before ACPI v2.0.
|
||||||
UCHAR pm_profile;
|
UCHAR pm_profile;
|
||||||
USHORT sci_int_vector;
|
USHORT sci_int_vector;
|
||||||
ULONG smi_cmd_io_port;
|
ULONG smi_cmd_io_port;
|
||||||
|
@ -158,11 +165,13 @@ typedef struct _FADT
|
||||||
UCHAR month_alarm_index;
|
UCHAR month_alarm_index;
|
||||||
UCHAR century_alarm_index;
|
UCHAR century_alarm_index;
|
||||||
USHORT boot_arch;
|
USHORT boot_arch;
|
||||||
UCHAR reserved3[1];
|
UCHAR reserved111[1];
|
||||||
ULONG flags;
|
ULONG flags;
|
||||||
|
// ACPI v1.5 (H.Rev=3)
|
||||||
GEN_ADDR reset_reg;
|
GEN_ADDR reset_reg;
|
||||||
UCHAR reset_val;
|
UCHAR reset_val;
|
||||||
UCHAR reserved4[3];
|
USHORT arm_boot_arch; // Was reserved before ACPI v5.1.
|
||||||
|
UCHAR minor_revision; // Was reserved before ACPI v5.1.
|
||||||
PHYSICAL_ADDRESS x_firmware_ctrl;
|
PHYSICAL_ADDRESS x_firmware_ctrl;
|
||||||
PHYSICAL_ADDRESS x_dsdt;
|
PHYSICAL_ADDRESS x_dsdt;
|
||||||
GEN_ADDR x_pm1a_evt_blk;
|
GEN_ADDR x_pm1a_evt_blk;
|
||||||
|
@ -173,6 +182,11 @@ typedef struct _FADT
|
||||||
GEN_ADDR x_pm_tmr_blk;
|
GEN_ADDR x_pm_tmr_blk;
|
||||||
GEN_ADDR x_gp0_blk;
|
GEN_ADDR x_gp0_blk;
|
||||||
GEN_ADDR x_gp1_blk;
|
GEN_ADDR x_gp1_blk;
|
||||||
|
// ACPI v5.0 (H.Rev=5)
|
||||||
|
GEN_ADDR sleep_control;
|
||||||
|
GEN_ADDR sleep_status;
|
||||||
|
// ACPI v6.0 (H.Rev=6)
|
||||||
|
ULONGLONG hypervisor_id;
|
||||||
} FADT;
|
} FADT;
|
||||||
typedef FADT *PFADT;
|
typedef FADT *PFADT;
|
||||||
|
|
||||||
|
@ -185,6 +199,7 @@ typedef DSDT *PDSDT;
|
||||||
|
|
||||||
typedef struct _RSDT
|
typedef struct _RSDT
|
||||||
{
|
{
|
||||||
|
// ACPI v1.0 (H.Rev=1)
|
||||||
DESCRIPTION_HEADER Header;
|
DESCRIPTION_HEADER Header;
|
||||||
ULONG Tables[ANYSIZE_ARRAY];
|
ULONG Tables[ANYSIZE_ARRAY];
|
||||||
} RSDT;
|
} RSDT;
|
||||||
|
@ -192,6 +207,7 @@ typedef RSDT *PRSDT;
|
||||||
|
|
||||||
typedef struct _XSDT
|
typedef struct _XSDT
|
||||||
{
|
{
|
||||||
|
// ACPI v2.0 (H.Rev=1)
|
||||||
DESCRIPTION_HEADER Header;
|
DESCRIPTION_HEADER Header;
|
||||||
PHYSICAL_ADDRESS Tables[ANYSIZE_ARRAY];
|
PHYSICAL_ADDRESS Tables[ANYSIZE_ARRAY];
|
||||||
} XSDT;
|
} XSDT;
|
||||||
|
|
Loading…
Reference in a new issue