summaryrefslogtreecommitdiffhomepage
path: root/dev/boot/src/HEL/ARM64
diff options
context:
space:
mode:
authorAmlal El Mahrouss <amlal@nekernel.org>2025-06-05 18:19:48 +0200
committerAmlal El Mahrouss <amlal@nekernel.org>2025-06-05 18:19:48 +0200
commit1f41e2bf786864ea59fd6944325094cc3becd26a (patch)
treece3bc48e8e0d1d4eeb8851dcd3168096db0cdbd6 /dev/boot/src/HEL/ARM64
parent03a3e67b159641a925dc4da3a0e6c4a1163d82d8 (diff)
fix: aarch64: Don't exit Boot Services, when the kernel already does it.
Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
Diffstat (limited to 'dev/boot/src/HEL/ARM64')
-rw-r--r--dev/boot/src/HEL/ARM64/BootEFI.cc36
1 files changed, 1 insertions, 35 deletions
diff --git a/dev/boot/src/HEL/ARM64/BootEFI.cc b/dev/boot/src/HEL/ARM64/BootEFI.cc
index 66f91352..c420530d 100644
--- a/dev/boot/src/HEL/ARM64/BootEFI.cc
+++ b/dev/boot/src/HEL/ARM64/BootEFI.cc
@@ -116,16 +116,6 @@ EFI_EXTERN_C EFI_API Int32 BootloaderMain(EfiHandlePtr image_handle, EfiSystemTa
// Assign to global 'kHandoverHeader'.
kHandoverHeader = handover_hdr;
- fb_init();
-
- FB::fb_clear_video();
-
- FBDrawBitMapInRegion(zka_disk, NE_DISK_WIDTH, NE_DISK_HEIGHT,
- (kHandoverHeader->f_GOP.f_Width - NE_DISK_WIDTH) / 2,
- (kHandoverHeader->f_GOP.f_Height - NE_DISK_HEIGHT) / 2);
-
- fb_clear();
-
UInt32 cnt_enabled = 0;
UInt32 cnt_disabled = 0;
@@ -169,28 +159,6 @@ EFI_EXTERN_C EFI_API Int32 BootloaderMain(EfiHandlePtr image_handle, EfiSystemTa
}
}
- Boot::BootFileReader reader_syschk(L"chk.efi", image_handle);
- reader_syschk.ReadAll(0);
-
- Boot::BootThread* syschk_thread = nullptr;
-
- if (reader_syschk.Blob()) {
- syschk_thread = new Boot::BootThread(reader_syschk.Blob());
- syschk_thread->SetName("BootZ: System Check");
-
- if (syschk_thread->Start(handover_hdr, NO) != kEfiOk) {
- fb_init();
-
- FB::fb_clear_video();
-
- 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);
-
- fb_clear();
- }
- }
-
// ------------------------------------------ //
// null these fields, to avoid being reused later.
// ------------------------------------------ //
@@ -220,13 +188,11 @@ EFI_EXTERN_C EFI_API Int32 BootloaderMain(EfiHandlePtr image_handle, EfiSystemTa
if (reader_kernel.Blob()) {
auto kernel_thread = Boot::BootThread(reader_kernel.Blob());
- kernel_thread.SetName("BootZ: Kernel.");
+ kernel_thread.SetName("Kernel Task");
handover_hdr->f_KernelImage = reader_kernel.Blob();
handover_hdr->f_KernelSz = reader_kernel.Size();
- Boot::ExitBootServices(map_key, image_handle);
-
kernel_thread.Start(handover_hdr, YES);
}