From 5b2ec031ab578caec8fbbdbe5350b9c0df493fd3 Mon Sep 17 00:00:00 2001 From: Amlal El Mahrouss Date: Fri, 16 May 2025 09:51:24 +0200 Subject: feat(kernel/ap): Improved and fixed the AP boot flow, also made sure that the segment loading for the long mode stub works. TODO: - Stack pointer shall be set when jumping to AP routine. Signed-off-by: Amlal El Mahrouss --- dev/kernel/HALKit/AMD64/HalKernelMain.cc | 10 +++++----- 1 file changed, 5 insertions(+), 5 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 b7ff3038..158eaa85 100644 --- a/dev/kernel/HALKit/AMD64/HalKernelMain.cc +++ b/dev/kernel/HALKit/AMD64/HalKernelMain.cc @@ -106,10 +106,12 @@ EXTERN_C Int32 hal_init_platform(Kernel::HEL::BootInfoHeader* handover_hdr) { EXTERN_C void rtl_ne_task(void); EXTERN_C Kernel::Void hal_real_init(Kernel::Void) noexcept { - Kernel::rtl_create_user_process(rtl_ne_task, "MGMTCTL"); - Kernel::rtl_create_user_process(rtl_ne_task, "LAUNCHCTL"); - Kernel::rtl_create_user_process(rtl_ne_task, "SECURITYCTL"); + Kernel::rtl_create_user_process(rtl_ne_task, "MgmtSrv"); + Kernel::rtl_create_user_process(rtl_ne_task, "LaunchSrv"); + Kernel::rtl_create_user_process(rtl_ne_task, "SecSrv"); + Kernel::HAL::mp_init_cores(kHandoverHeader->f_HardwareTables.f_VendorPtr); + Kernel::HAL::Register64 idt_reg; idt_reg.Base = reinterpret_cast(kInterruptVectorTable); @@ -117,8 +119,6 @@ EXTERN_C Kernel::Void hal_real_init(Kernel::Void) noexcept { idt_loader.Load(idt_reg); - Kernel::HAL::mp_init_cores(kHandoverHeader->f_HardwareTables.f_VendorPtr); - #ifdef __FSKIT_INCLUDES_HEFS__ if (Kernel::HeFS::fs_init_hefs()) { goto hal_spin_kernel; -- cgit v1.2.3