git://scm.lunaixsky.com
/
lunaix-os.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
feat: kill(2) implementation
[lunaix-os.git]
/
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 892624497c1d274bf78ca8f30b36284cec98164d..453e9f438f8d3366e5e4a5fbdf19c63ee19fee92 100644
(file)
--- 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 "sdt.h"
#include "madt.h"
+#include "fadt.h"
+
+// * for quick conversion from a table name into ACPI favoured signature
+// * use `echo <TableName> | xxd -eg4`
#define ACPI_RSDP_SIG_L 0x20445352 // 'RSD '
#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;
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;
// 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;
// Make it as null terminated
char oem_id[7];
acpi_madt_toc_t madt;
+ acpi_fadt_t fadt;
} acpi_context;
int
} acpi_context;
int