diff options
Diffstat (limited to 'src/kernel/libs/acpi.c')
-rw-r--r-- | src/kernel/libs/acpi.c | 5 |
1 files changed, 1 insertions, 4 deletions
diff --git a/src/kernel/libs/acpi.c b/src/kernel/libs/acpi.c index 8bc6a56..0c22fe4 100644 --- a/src/kernel/libs/acpi.c +++ b/src/kernel/libs/acpi.c @@ -31,16 +31,13 @@ static int RSDP_verify(void *rsdp_pointer) { return 1; } -// TODO: move these when you gain your sanity -rsdp_t *find_RSDP() { // finds root descriptor +rsdp_t *find_RSDP() { const char sig[9] = "RSD PTR "; uintptr_t *p = (void *)0x040e; uintptr_t *ebda_unshifted = (void *)p; - // TODO you REALLY need to verify this. void *ebda = (void *)((uintptr_t)ebda_unshifted << (uintptr_t)4 & (uintptr_t)0xfffff); - for(void *i = ebda; i <= ebda + 64000; i += 16) { if(!(memcmp(sig, i, 8))) { if(RSDP_verify(i)) { |