summaryrefslogtreecommitdiff
path: root/kernel/acpi.h
diff options
context:
space:
mode:
authorMiguel <m.i@gmx.at>2018-09-09 17:28:59 +0200
committerMiguel <m.i@gmx.at>2018-09-09 17:28:59 +0200
commit4cda542d863839c5b0e026ccee297ca5ff3dd9cd (patch)
tree7b8f7734f8f982df82b5c784386232e35a7ced44 /kernel/acpi.h
parent9a4b35fd5a32490f8f15b48f978e7b1fbfdceb2a (diff)
switched to apic/ioapic finally
Diffstat (limited to 'kernel/acpi.h')
-rw-r--r--kernel/acpi.h27
1 files changed, 25 insertions, 2 deletions
diff --git a/kernel/acpi.h b/kernel/acpi.h
index ce8d710..e94766c 100644
--- a/kernel/acpi.h
+++ b/kernel/acpi.h
@@ -1,3 +1,6 @@
+#ifndef FOOLOS_ACPI_H
+#define FOOLOS_ACPI_H
+
/**
* @file
*
@@ -10,5 +13,25 @@
* https://wiki.osdev.org/MADT#Entry_Type_1_:_I.2FO_APIC
*/
-#include "smp.h"
-bool acpi_find(smp_processors *procdata);
+#include <stdint.h>
+
+typedef struct
+{
+
+ uint8_t boot; //which processor in array is bsp
+ // (boot strap processor)
+
+ uint8_t processors; // total number of usable processors
+
+ uint32_t local_apic_address;// same for every processor
+ uint32_t io_apic_address;
+
+ uint32_t local_apic_id[SMP_MAX_PROC]; // unique id for every processor
+
+ uint32_t flags;
+
+}acpi_information;
+
+bool acpi_fill(acpi_information *procdata);
+
+#endif