summaryrefslogtreecommitdiffhomepage
path: root/dev
diff options
context:
space:
mode:
Diffstat (limited to 'dev')
-rw-r--r--dev/boot/BootKit/BootKit.h9
-rw-r--r--dev/boot/modules/SysChk/SysChk.cc (renamed from dev/boot/modules/SysChk/Module.cc)0
-rw-r--r--dev/boot/src/BootFileReader.cc2
-rw-r--r--dev/boot/src/BootThread.cc8
-rw-r--r--dev/boot/src/HEL/AMD64/BootEFI.cc18
-rw-r--r--dev/boot/src/HEL/ARM64/BootEFI.cc2
-rw-r--r--dev/kernel/FirmwareKit/EFI/API.h6
7 files changed, 21 insertions, 24 deletions
diff --git a/dev/boot/BootKit/BootKit.h b/dev/boot/BootKit/BootKit.h
index 425c6ed4..6cde6a51 100644
--- a/dev/boot/BootKit/BootKit.h
+++ b/dev/boot/BootKit/BootKit.h
@@ -37,14 +37,11 @@
/// Framebuffer helpers.
/***********************************************************************************/
-namespace EFI
+namespace Boot
{
EXTERN void ThrowError(const WideChar* errorCode,
const WideChar* reason) noexcept;
-} // namespace EFI
-
-namespace Boot
-{
+
class BootTextWriter;
class BootFileReader;
class BootThread;
@@ -338,7 +335,7 @@ namespace Boot
fb_init();
FBDrawBitMapInRegion(zka_no_disk, NE_NO_DISK_WIDTH, NE_NO_DISK_HEIGHT, (kHandoverHeader->f_GOP.f_Width - NE_NO_DISK_WIDTH) / 2, (kHandoverHeader->f_GOP.f_Height - NE_NO_DISK_HEIGHT) / 2);
- EFI::ThrowError(L"Drive-Too-Tiny", L"Can't format a NeFS partition here.");
+ Boot::ThrowError(L"Drive-Too-Tiny", L"Can't format a NeFS partition here.");
return false;
}
diff --git a/dev/boot/modules/SysChk/Module.cc b/dev/boot/modules/SysChk/SysChk.cc
index c22e183b..c22e183b 100644
--- a/dev/boot/modules/SysChk/Module.cc
+++ b/dev/boot/modules/SysChk/SysChk.cc
diff --git a/dev/boot/src/BootFileReader.cc b/dev/boot/src/BootFileReader.cc
index a2afbce5..604ddaba 100644
--- a/dev/boot/src/BootFileReader.cc
+++ b/dev/boot/src/BootFileReader.cc
@@ -154,7 +154,7 @@ Void Boot::BootFileReader::ReadAll(SizeT readUntil, SizeT chunkToRead, UIntPtr o
kEfiOk)
{
mWriter.Write(L"*** error: ").Write(err).Write(L" ***\r");
- EFI::ThrowError(L"OutOfMemory", L"Out of memory.");
+ Boot::ThrowError(L"OutOfMemory", L"Out of memory.");
}
}
else
diff --git a/dev/boot/src/BootThread.cc b/dev/boot/src/BootThread.cc
index e087d386..eef2104b 100644
--- a/dev/boot/src/BootThread.cc
+++ b/dev/boot/src/BootThread.cc
@@ -117,7 +117,7 @@ namespace Boot
if (handover_struc->HandoverArch != HEL::kArchAMD64)
{
fb_render_string("BootZ: Not an handover header, bad CPU...", 40, 10, RGB(0xFF, 0xFF, 0xFF));
- ::EFI::Stop();
+ ::Boot::Stop();
}
#endif
@@ -125,12 +125,12 @@ namespace Boot
if (handover_struc->HandoverArch != HEL::kArchARM64)
{
fb_render_string("BootZ: Not an handover header, bad CPU...", 40, 10, RGB(0xFF, 0xFF, 0xFF));
- ::EFI::Stop();
+ ::Boot::Stop();
}
#endif
fb_render_string("BootZ: Not an handover header...", 40, 10, RGB(0xFF, 0xFF, 0xFF));
- ::EFI::Stop();
+ ::Boot::Stop();
}
}
@@ -165,7 +165,7 @@ namespace Boot
{
HEL::HandoverProc err_fn = [](HEL::BootInfoHeader* rcx) -> Int32 {
fb_render_string("BootZ: Invalid Boot Image...", 50, 10, RGB(0xFF, 0xFF, 0xFF));
- ::EFI::Stop();
+ ::Boot::Stop();
return NO;
};
diff --git a/dev/boot/src/HEL/AMD64/BootEFI.cc b/dev/boot/src/HEL/AMD64/BootEFI.cc
index 4744892f..a6af4235 100644
--- a/dev/boot/src/HEL/AMD64/BootEFI.cc
+++ b/dev/boot/src/HEL/AMD64/BootEFI.cc
@@ -307,10 +307,15 @@ EFI_EXTERN_C EFI_API Int32 Main(EfiHandlePtr image_handle,
fb_init();
FBDrawBitMapInRegion(zka_no_disk, NE_NO_DISK_WIDTH, NE_NO_DISK_HEIGHT, (kHandoverHeader->f_GOP.f_Width - NE_NO_DISK_WIDTH) / 2, (kHandoverHeader->f_GOP.f_Height - NE_NO_DISK_HEIGHT) / 2);
- EFI::Stop();
+ Boot::Stop();
}
- EFI::ExitBootServices(map_key, image_handle);
+ Boot::BootFileReader reader_netboot(L"netboot.sys", image_handle);
+ reader_netboot.ReadAll(0);
+
+ Boot::BootThread* netboot_thread = nullptr;
+
+ Boot::ExitBootServices(map_key, image_handle);
// ---------------------------------------------------- //
// Finally load the OS kernel.
@@ -318,13 +323,8 @@ EFI_EXTERN_C EFI_API Int32 Main(EfiHandlePtr image_handle,
if (kernel_thread->Start(handover_hdr, YES) != kEfiOk)
{
- Boot::BootFileReader reader_netboot(L"netboot.sys", image_handle);
- reader_netboot.ReadAll(0);
-
- Boot::BootThread* netboot_thread = nullptr;
-
// ------------------------------------------ //
- // If we succeed in reading the blob, then execute it. (That is NetBoot)
+ // If we fail into booting the kernel, then run NetBoot.
// ------------------------------------------ //
if (reader_netboot.Blob())
@@ -334,6 +334,6 @@ EFI_EXTERN_C EFI_API Int32 Main(EfiHandlePtr image_handle,
netboot_thread->Start(handover_hdr, YES);
}
}
-
+
CANT_REACH();
}
diff --git a/dev/boot/src/HEL/ARM64/BootEFI.cc b/dev/boot/src/HEL/ARM64/BootEFI.cc
index d60f305b..09dcd4b0 100644
--- a/dev/boot/src/HEL/ARM64/BootEFI.cc
+++ b/dev/boot/src/HEL/ARM64/BootEFI.cc
@@ -211,7 +211,7 @@ EFI_EXTERN_C EFI_API Int32 Main(EfiHandlePtr image_handle,
handover_hdr->f_KernelImage = reader_kernel.Blob();
- EFI::ExitBootServices(map_key, image_handle);
+ Boot::ExitBootServices(map_key, image_handle);
kernel_thread.Start(handover_hdr, YES);
}
diff --git a/dev/kernel/FirmwareKit/EFI/API.h b/dev/kernel/FirmwareKit/EFI/API.h
index b05fcc71..916a6b1a 100644
--- a/dev/kernel/FirmwareKit/EFI/API.h
+++ b/dev/kernel/FirmwareKit/EFI/API.h
@@ -31,7 +31,7 @@ inline EfiBootServices* BS = nullptr;
EXTERN_C void rt_cli();
EXTERN_C void rt_hlt();
-namespace EFI
+namespace Boot
{
/// @brief Halt and clear interrupts.
/// @return
@@ -79,9 +79,9 @@ Bascially frees everything we have in the EFI side.
ST->ConOut->OutputString(ST->ConOut, L" ***\r");
- EFI::Stop();
+ Boot::Stop();
}
-} // namespace EFI
+} // namespace Boot
inline void InitEFI(EfiSystemTable* SystemTable) noexcept
{