From a01ba7acb4786a6354349408b3bcc4c2d007b274 Mon Sep 17 00:00:00 2001 From: Amlal El Mahrouss Date: Mon, 14 Apr 2025 09:42:28 +0200 Subject: bootloader, netboot: integrate EFI_SIMPLE_NETWORK_PROTOCOL for HTTP-based kernel fetching - Added BootNet module to support network boot using EFI_SIMPLE_NETWORK_PROTOCOL - Replaced ModuleMain with BootloaderMain as unified entry point - Implemented EFI protocol discovery, startup, and logging for netboot - Updated linker scripts, GDB configs, and build targets accordingly - Laid groundwork for full HTTP/TCP/IP bootloader logic - Improved kernel handoff logic and memory allocation fallback handling Signed-off-by: Amlal El Mahrouss --- dev/kernel/HALKit/AMD64/HalKernelMain.cc | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) (limited to 'dev/kernel/HALKit/AMD64/HalKernelMain.cc') diff --git a/dev/kernel/HALKit/AMD64/HalKernelMain.cc b/dev/kernel/HALKit/AMD64/HalKernelMain.cc index cc3c8e93..7ce1b0d8 100644 --- a/dev/kernel/HALKit/AMD64/HalKernelMain.cc +++ b/dev/kernel/HALKit/AMD64/HalKernelMain.cc @@ -29,9 +29,10 @@ STATIC Kernel::Void hal_init_scheduler_team() STATIC Kernel::UInt64 hal_rdtsc_fn() { - Kernel::UInt32 lo, hi; - __asm__ volatile("rdtsc" - : "=a"(lo), "=d"(hi)); + Kernel::UInt32 lo = 0, hi = 0; + + asm volatile("rdtsc" + : "=a"(lo), "=d"(hi)); return ((Kernel::UInt64)hi << 32) | lo; } -- cgit v1.2.3