diff options
author | Brett Weiland <brett_weiland@bpcspace.com> | 2021-03-24 15:36:54 -0500 |
---|---|---|
committer | Brett Weiland <brett_weiland@bpcspace.com> | 2021-03-24 15:38:09 -0500 |
commit | 14b109ea24dc5cb1db948de57a2a44c80ef4622e (patch) | |
tree | e397997d9c8d9c1b50a5a5235d38c6b0e8f24b5b /src/kernel/libs/acpi.c | |
parent | 13000d6f44d66da795e92e4b2ddc37ce879bf275 (diff) |
modified: README.md
modified: compiler/create_crosscompiler.sh
deleted: notes
modified: src/.gdb_history
deleted: src/amd64_vol2.pdf
modified: src/bootloader/bios_functions/bios_disk.asm
modified: src/bootloader/bios_functions/print.asm
modified: src/bootloader/bootloader.asm
modified: src/bootloader/cpu_check.asm
modified: src/bootloader/enter_kernel.asm
deleted: src/bootloader/enter_kernel_backup
modified: src/bootloader/gdt.asm
deleted: src/bootloader/multicore.asm
deleted: src/bootloader/notes
new file: src/debug/gdbinit.gdb
deleted: src/indigo_os
modified: src/kernel/include/libc.h
modified: src/kernel/include/paging.h
modified: src/kernel/include/video.h
modified: src/kernel/kernel.c
modified: src/kernel/libs/acpi.c
modified: src/kernel/libs/drivers/serial.c
modified: src/kernel/libs/drivers/video.c
modified: src/kernel/libs/libc.c
modified: src/kernel/libs/page.c
modified: src/link.ld
modified: src/makefile
new file: tools/README.md
modified: tools/page/page.py
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)) { |