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/KernelKit/DeviceMgr.h | 4 ++-- dev/kernel/KernelKit/FileMgr.h | 2 +- dev/kernel/KernelKit/ProcessScheduler.h | 16 ++++++++-------- dev/kernel/KernelKit/Timer.h | 4 ++-- 4 files changed, 13 insertions(+), 13 deletions(-) (limited to 'dev/kernel/KernelKit') diff --git a/dev/kernel/KernelKit/DeviceMgr.h b/dev/kernel/KernelKit/DeviceMgr.h index fcafa7a5..9cfc54dd 100644 --- a/dev/kernel/KernelKit/DeviceMgr.h +++ b/dev/kernel/KernelKit/DeviceMgr.h @@ -52,13 +52,13 @@ namespace Kernel IDeviceObject(const IDeviceObject&) = default; public: - virtual IDeviceObject& operator<<(T Data) + virtual IDeviceObject& operator<<(T Data) { fOut(this, Data); return *this; } - virtual IDeviceObject& operator>>(T Data) + virtual IDeviceObject& operator>>(T Data) { fIn(this, Data); return *this; diff --git a/dev/kernel/KernelKit/FileMgr.h b/dev/kernel/KernelKit/FileMgr.h index b4da6d5b..03e74ee8 100644 --- a/dev/kernel/KernelKit/FileMgr.h +++ b/dev/kernel/KernelKit/FileMgr.h @@ -347,7 +347,7 @@ namespace Kernel const Encoding* restrict_type) : fFile(Class::GetMounted()->Open(path, restrict_type)) { - SizeT kRestrictCount = kRestrictMax; + SizeT kRestrictCount = kRestrictMax; const FileRestrictKind kRestrictList[] = { { .fRestrict = kRestrictR, diff --git a/dev/kernel/KernelKit/ProcessScheduler.h b/dev/kernel/KernelKit/ProcessScheduler.h index db6f9aed..cff2ce6b 100644 --- a/dev/kernel/KernelKit/ProcessScheduler.h +++ b/dev/kernel/KernelKit/ProcessScheduler.h @@ -181,7 +181,7 @@ namespace Kernel AffinityKind Affinity{AffinityKind::kStandard}; ProcessStatusKind Status{ProcessStatusKind::kFinished}; UInt8* StackReserve{nullptr}; - ProcessImage Image{}; + ProcessImage Image{}; SizeT StackSize{kSchedMaxStackSz}; IDylibObject* DylibDelegate{nullptr}; SizeT MemoryCursor{0UL}; @@ -205,9 +205,9 @@ namespace Kernel UIntPtr SignalID; }; - ProcessSignal ProcessSignal; + ProcessSignal ProcessSignal; ProcessMemoryHeapList* ProcessMemoryHeap{nullptr}; - ProcessTeam* ProcessParentTeam; + ProcessTeam* ProcessParentTeam; VoidPtr VMRegister{0UL}; @@ -303,13 +303,13 @@ namespace Kernel Array& AsArray(); Ref& AsRef(); - ProcessID& Id() noexcept; + ProcessID& Id() noexcept; public: Array mProcessList; Ref mCurrentProcess; - ProcessID mTeamId{0}; - ProcessID mProcessCount{0}; + ProcessID mTeamId{0}; + ProcessID mProcessCount{0}; }; typedef Array UserThreadArray; @@ -337,8 +337,8 @@ namespace Kernel ProcessTeam& CurrentTeam(); public: - ProcessID Spawn(const Char* name, VoidPtr code, VoidPtr image); - Void Remove(ProcessID process_id); + ProcessID Spawn(const Char* name, VoidPtr code, VoidPtr image); + Void Remove(ProcessID process_id); Bool IsUser() override; Bool IsKernel() override; diff --git a/dev/kernel/KernelKit/Timer.h b/dev/kernel/KernelKit/Timer.h index 6c9195aa..fa26bc66 100644 --- a/dev/kernel/KernelKit/Timer.h +++ b/dev/kernel/KernelKit/Timer.h @@ -44,7 +44,7 @@ namespace Kernel private: UIntPtr* fDigitalTimer{nullptr}; - Int64 fWaitFor{0}; + Int64 fWaitFor{0}; }; class HardwareTimer final : public TimerInterface @@ -61,7 +61,7 @@ namespace Kernel private: UIntPtr* fDigitalTimer{nullptr}; - Int64 fWaitFor{0}; + Int64 fWaitFor{0}; }; inline Int64 rtl_ms(Int64 time) -- cgit v1.2.3