summaryrefslogtreecommitdiff
path: root/src/arch/amd64/acpi.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/arch/amd64/acpi.c')
-rw-r--r--src/arch/amd64/acpi.c7
1 files changed, 3 insertions, 4 deletions
diff --git a/src/arch/amd64/acpi.c b/src/arch/amd64/acpi.c
index 83f2014..70c2f38 100644
--- a/src/arch/amd64/acpi.c
+++ b/src/arch/amd64/acpi.c
@@ -31,7 +31,7 @@ struct rsdp {
char oemid[6];
uint8_t revision;
uint32_t rsdt_addr;
-} __attribute__((packed));
+};
// eXtended system descriptor pointer
// ACPI 2.0
@@ -46,7 +46,7 @@ struct xsdp {
uint64_t xsdt_addr;
uint8_t extendeid_checksum;
uint8_t reserved[3];
-} __attribute__((packed));
+};
// root system descriptor table
// ACPI 1.0
@@ -161,10 +161,8 @@ static bool checksum(uint8_t *data, size_t len) {
}
static int read_s5_addr(struct acpi_state *state) {
- serial_out_str("a");
uintptr_t ptr = state->fadt.dsdt;
char *s5_addr = (void*) (ptr + 36);
- serial_out_str("a");
int dsdt_len = *((int*) (ptr+1)) - 36;
while (0 < dsdt_len--) {
@@ -256,6 +254,7 @@ int acpi_init_rsdt(struct rsdt *rsdt) {
int acpi_init_xsdt(struct xsdt *xsdt) {
xsdt = mmap(xsdt, sizeof(struct xsdt));
+ return -1;
state.dst.xsdt = xsdt;
state.version = 2;