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/src/FS/NeFS.cc | 8 ++++---- dev/kernel/src/GUIDWizard.cc | 6 +++--- dev/kernel/src/Network/IPCMsg.cc | 8 ++++---- dev/kernel/src/Network/MACAddressGetter.cc | 2 +- dev/kernel/src/UserProcessScheduler.cc | 4 ++-- 5 files changed, 14 insertions(+), 14 deletions(-) (limited to 'dev/kernel/src') diff --git a/dev/kernel/src/FS/NeFS.cc b/dev/kernel/src/FS/NeFS.cc index 369e1eca..8bbec1d2 100644 --- a/dev/kernel/src/FS/NeFS.cc +++ b/dev/kernel/src/FS/NeFS.cc @@ -145,7 +145,7 @@ _Output BOOL NeFileSystemParser::CreateFork(_Input NEFS_FORK_STRUCT& the_fork) /// log what we have now. (void)(kout << "Fork offset is at: " << hex_number(the_fork.DataOffset) - << kendl); + << kendl); (void)(kout << "Wrote fork metadata at: " << hex_number(lba) << kendl); @@ -735,7 +735,7 @@ _Output NEFS_CATALOG_STRUCT* NeFileSystemParser::FindCatalog(_Input const Char* drive.fInput(drive.fPacket); - auto start_catalog_lba = kNeFSCatalogStartAddress; + auto start_catalog_lba = kNeFSCatalogStartAddress; if (!KStringBuilder::Equals(catalog_name, NeFileSystemHelper::Root()) && local_search) { @@ -966,7 +966,7 @@ VoidPtr NeFileSystemParser::ReadCatalog(_Input _Output NEFS_CATALOG_STRUCT* cata NE_UNUSED(dataSz); - Lba dataForkLba = (!is_rsrc_fork) ? catalog->DataFork : catalog->ResourceFork; + Lba dataForkLba = (!is_rsrc_fork) ? catalog->DataFork : catalog->ResourceFork; NEFS_FORK_STRUCT* fs_buf = new NEFS_FORK_STRUCT(); auto& drive = kMountpoint.A(); @@ -1030,7 +1030,7 @@ bool NeFileSystemParser::Seek(_Input _Output NEFS_CATALOG_STRUCT* catalog, SizeT SizeT NeFileSystemParser::Tell(_Input _Output NEFS_CATALOG_STRUCT* catalog) { NE_UNUSED(catalog); - + err_global_get() = kErrorUnimplemented; return 0; } diff --git a/dev/kernel/src/GUIDWizard.cc b/dev/kernel/src/GUIDWizard.cc index 4aab3b76..b14f637f 100644 --- a/dev/kernel/src/GUIDWizard.cc +++ b/dev/kernel/src/GUIDWizard.cc @@ -26,9 +26,9 @@ namespace CF::XRN::Version1 Ref seq_ref{seq}; - seq_ref.Leak()->fUuid.fMs1 = uuidSeq[0]; - seq_ref.Leak()->fUuid.fMs2 = uuidSeq[1]; - seq_ref.Leak()->fUuid.fMs3 = uuidSeq[2]; + seq_ref.Leak()->fUuid.fMs1 = uuidSeq[0]; + seq_ref.Leak()->fUuid.fMs2 = uuidSeq[1]; + seq_ref.Leak()->fUuid.fMs3 = uuidSeq[2]; seq_ref.Leak()->fUuid.fMs4[0] = uuidSeq[3]; seq_ref.Leak()->fUuid.fMs4[1] = uuidSeq[4]; seq_ref.Leak()->fUuid.fMs4[2] = uuidSeq[5]; diff --git a/dev/kernel/src/Network/IPCMsg.cc b/dev/kernel/src/Network/IPCMsg.cc index 0f3e61e5..ceb0ae98 100644 --- a/dev/kernel/src/Network/IPCMsg.cc +++ b/dev/kernel/src/Network/IPCMsg.cc @@ -90,11 +90,11 @@ namespace Kernel (*pckt_in)->IpcEndianess = static_cast(endianess); (*pckt_in)->IpcPacketSize = sizeof(IPC_MSG); - (*pckt_in)->IpcTo.UserProcessID = 0; - (*pckt_in)->IpcTo.ProcessTeam = 0; + (*pckt_in)->IpcTo.UserProcessID = 0; + (*pckt_in)->IpcTo.ProcessTeam = 0; - (*pckt_in)->IpcFrom.UserProcessID = 0; - (*pckt_in)->IpcFrom.ProcessTeam = 0; + (*pckt_in)->IpcFrom.UserProcessID = 0; + (*pckt_in)->IpcFrom.ProcessTeam = 0; return Yes; } diff --git a/dev/kernel/src/Network/MACAddressGetter.cc b/dev/kernel/src/Network/MACAddressGetter.cc index b6659298..192dbc70 100644 --- a/dev/kernel/src/Network/MACAddressGetter.cc +++ b/dev/kernel/src/Network/MACAddressGetter.cc @@ -8,7 +8,7 @@ namespace Kernel { - Array& MacAddressGetter::AsBytes() + Array& MacAddressGetter::AsBytes() { return this->fMacAddress; } diff --git a/dev/kernel/src/UserProcessScheduler.cc b/dev/kernel/src/UserProcessScheduler.cc index 5f627dd5..b2052723 100644 --- a/dev/kernel/src/UserProcessScheduler.cc +++ b/dev/kernel/src/UserProcessScheduler.cc @@ -133,14 +133,14 @@ namespace Kernel } else { - ProcessMemoryHeapList* entry = this->ProcessMemoryHeap; + ProcessMemoryHeapList* entry = this->ProcessMemoryHeap; while (entry) { if (entry->MemoryEntry == nullptr) break; // chose to break here, when we get an already allocated memory entry for our needs. - entry = entry->MemoryNext; + entry = entry->MemoryNext; } entry->MemoryNext = new ProcessMemoryHeapList(); -- cgit v1.2.3