From 9b7a2a6461a463b08a120c660fcc64b46b65d417 Mon Sep 17 00:00:00 2001 From: Amlal El Mahrouss Date: Sat, 5 Apr 2025 06:27:18 +0200 Subject: kernel: storage, modules, mbci: implement mbci_read_auth_key, mbci_test_mmio, test DMA on AHCI too. - Alongside fixes for BootNet, SysChk, and refactor for KernelScheduler, and MemoryMgr. - IMPORTANT: Add MBCI specs. Signed-off-by: Amlal El Mahrouss --- dev/boot/amd64-desktop.make | 3 ++- dev/boot/modules/BootNet/BootNet.cc | 4 ++-- dev/boot/modules/BootNet/BootNetStartup.S | 2 ++ dev/boot/modules/BootNet/amd64.json | 2 +- dev/boot/modules/SysChk/SysChk.cc | 2 +- dev/boot/modules/SysChk/SysChkStartup.S | 2 ++ dev/boot/modules/SysChk/amd64.json | 2 +- 7 files changed, 11 insertions(+), 6 deletions(-) (limited to 'dev/boot') diff --git a/dev/boot/amd64-desktop.make b/dev/boot/amd64-desktop.make index 6e796752..9e4e9894 100644 --- a/dev/boot/amd64-desktop.make +++ b/dev/boot/amd64-desktop.make @@ -97,7 +97,7 @@ all: compile-amd64 .PHONY: disk disk: dd if=/dev/zero of=$(BOOT) bs=30M count=100 - mformat -i $(BOOT) -F -v "NeKernel" + mformat -i $(BOOT) -F -v "NEKERNEL-ESP" ifneq ($(DEBUG_SUPPORT), ) @@ -151,6 +151,7 @@ help: @echo "=== HELP ===" @echo "epm-img: Format a disk using the Explicit Partition Map." @echo "gpt-img: Format a disk using the Explicit Partition Map." + @echo "disk: Format a FAT32 ESP disk." @echo "clean: remove bootloader and files." @echo "bootloader-amd64: Build bootloader. (PC AMD64)" @echo "run-efi-amd64-: Run bootloader. (PC AMD64)" diff --git a/dev/boot/modules/BootNet/BootNet.cc b/dev/boot/modules/BootNet/BootNet.cc index a877b9a1..47129d38 100644 --- a/dev/boot/modules/BootNet/BootNet.cc +++ b/dev/boot/modules/BootNet/BootNet.cc @@ -11,11 +11,11 @@ #include #include -EfiGUID kEfiIP4ProtoGUID; +STATIC EfiGUID kEfiIP4ProtoGUID = {}; STATIC Void bootnet_read_udp_packet(BOOTNET_INTERNET_HEADER&); -EXTERN_C Int32 ModuleMain(Kernel::HEL::BootInfoHeader* handover) +EXTERN_C Int32 BootNetModuleMain(Kernel::HEL::BootInfoHeader* handover) { BOOTNET_INTERNET_HEADER inet{}; diff --git a/dev/boot/modules/BootNet/BootNetStartup.S b/dev/boot/modules/BootNet/BootNetStartup.S index 976c5e88..d8113bd7 100644 --- a/dev/boot/modules/BootNet/BootNetStartup.S +++ b/dev/boot/modules/BootNet/BootNetStartup.S @@ -20,3 +20,5 @@ .quad kHandoverMagic .word kTypeDriver +.word 0 +.word kArchAmd64 \ No newline at end of file diff --git a/dev/boot/modules/BootNet/amd64.json b/dev/boot/modules/BootNet/amd64.json index 112cf9f1..86143e6a 100644 --- a/dev/boot/modules/BootNet/amd64.json +++ b/dev/boot/modules/BootNet/amd64.json @@ -10,7 +10,7 @@ "-fPIC", "-fno-rtti", "-fno-exceptions", - "-Wl,--subsystem=17,--image-base,0x1000000,-e,ModuleMain" + "-Wl,--subsystem=17,--image-base,0x1000000,-e,BootNetModuleMain" ], "cpp_macros": [ "__NEOSKRNL__", diff --git a/dev/boot/modules/SysChk/SysChk.cc b/dev/boot/modules/SysChk/SysChk.cc index 51b247a5..f9af8517 100644 --- a/dev/boot/modules/SysChk/SysChk.cc +++ b/dev/boot/modules/SysChk/SysChk.cc @@ -21,7 +21,7 @@ #include #include -EXTERN_C Int32 ModuleMain(Kernel::HEL::BootInfoHeader* handover) +EXTERN_C Int32 SysChkModuleMain(Kernel::HEL::BootInfoHeader* handover) { #ifdef __NE_AMD64__ Boot::BDiskFormatFactory partition_factory; diff --git a/dev/boot/modules/SysChk/SysChkStartup.S b/dev/boot/modules/SysChk/SysChkStartup.S index 976c5e88..d8113bd7 100644 --- a/dev/boot/modules/SysChk/SysChkStartup.S +++ b/dev/boot/modules/SysChk/SysChkStartup.S @@ -20,3 +20,5 @@ .quad kHandoverMagic .word kTypeDriver +.word 0 +.word kArchAmd64 \ No newline at end of file diff --git a/dev/boot/modules/SysChk/amd64.json b/dev/boot/modules/SysChk/amd64.json index d995bde2..3b5bab6f 100644 --- a/dev/boot/modules/SysChk/amd64.json +++ b/dev/boot/modules/SysChk/amd64.json @@ -10,7 +10,7 @@ "-fPIC", "-fno-rtti", "-fno-exceptions", - "-Wl,--subsystem=17,--image-base,0x1000000,-e,ModuleMain" + "-Wl,--subsystem=17,--image-base,0x1000000,-e,SysChkModuleMain" ], "cpp_macros": [ "__NEOSKRNL__", -- cgit v1.2.3