git.cappig.dev / apheleiaOS.git master

e3ae5b6a91043ad058ea065615d228cce21f804e master
cappig <[email protected]> ยท 2 years ago
Add support for ACPI and PCIE

* Locate the RSDP during boot and pass it to the kernel
* Parse the RSDT in the kernel
* Scan the MCFG table and locate PCI express devices
* Add some helper function to mem/virtual
* Some small fixes here and there
NOTE: This build of the project works and has been tested on QEMU, VBOX and VMWARE
16 files changed, 404 insertions, 53 deletions
boot/bios/main.c +2 -0
boot/bios/memory.c +19 -0
boot/bios/memory.h +3 -0
kernel/boot.asm +1 -0
kernel/drivers/acpi.c created
kernel/drivers/acpi.h created
kernel/drivers/ide.c +29 -12
kernel/drivers/pci.c +116 -30
kernel/drivers/pci.h +14 -1
kernel/main.c +5 -4
kernel/mem/heap.c +8 -2
kernel/mem/virtual.c +27 -2
kernel/mem/virtual.h +3 -0
kernel/vfs/fs.c +0 -1
libs/boot/proto.h +3 -1
libs/x86/asm.h +9 -0