X-Git-Url: https://scm.lunaixsky.com/lunaix-os.git/blobdiff_plain/05b7549a0f980efa33265a091a5174a78851ce05..cb529e7c1abcfe6b61241e47a780172031b82840:/lunaix-os/includes/hal/acpi/acpi.h diff --git a/lunaix-os/includes/hal/acpi/acpi.h b/lunaix-os/includes/hal/acpi/acpi.h index 8926244..453e9f4 100644 --- a/lunaix-os/includes/hal/acpi/acpi.h +++ b/lunaix-os/includes/hal/acpi/acpi.h @@ -7,17 +7,22 @@ #include "sdt.h" #include "madt.h" +#include "fadt.h" + +// * for quick conversion from a table name into ACPI favoured signature +// * use `echo | xxd -eg4` #define ACPI_RSDP_SIG_L 0x20445352 // 'RSD ' -#define ACPI_RSDP_SIG_H 0x20525450 // 'PTR ' +#define ACPI_RSDP_SIG_H 0x20525450 // 'PTR ' -#define ACPI_MADT_SIG 0x43495041 // 'APIC' +#define ACPI_MADT_SIG 0x43495041 // 'APIC' +#define ACPI_FADT_SIG 0x50434146 // 'FACP' Notice that it is not 'FADT'. typedef struct { uint32_t signature_l; uint32_t signature_h; uint8_t chksum; - uint8_t oem_id[6]; + char oem_id[6]; // Revision uint8_t rev; acpi_rsdt_t* rsdt; @@ -36,6 +41,7 @@ typedef struct // Make it as null terminated char oem_id[7]; acpi_madt_toc_t madt; + acpi_fadt_t fadt; } acpi_context; int