From 1e8b22f34ce423b23d1b4c4ea59ed16aa29842d8 Mon Sep 17 00:00:00 2001 From: Amlal Date: Thu, 1 May 2025 11:59:48 +0200 Subject: tooling, fs: Improve tooling and clean up HeFS filesystem code. Signed-off-by: Amlal --- dev/boot/src/HEL/AMD64/BootEFI.cc | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) (limited to 'dev/boot/src') diff --git a/dev/boot/src/HEL/AMD64/BootEFI.cc b/dev/boot/src/HEL/AMD64/BootEFI.cc index ffc3c692..260d7c00 100644 --- a/dev/boot/src/HEL/AMD64/BootEFI.cc +++ b/dev/boot/src/HEL/AMD64/BootEFI.cc @@ -199,15 +199,15 @@ EFI_EXTERN_C EFI_API Int32 BootloaderMain(EfiHandlePtr image_handle, EfiSystemTa // Assign to global 'kHandoverHeader'. WideChar kernel_path[256U] = L"krnl.efi"; - UInt32 kernel_path_sz = 256U; + UInt32 kernel_path_sz = StrLen("krnl.efi"); - if (ST->RuntimeServices->GetVariable(L"/props/boot_path", kEfiGlobalNamespaceVarGUID, nullptr, + if (ST->RuntimeServices->GetVariable(L"/props/kernel_path", kEfiGlobalNamespaceVarGUID, nullptr, &kernel_path_sz, kernel_path) != kEfiOk) { /// access attributes (in order) /// EFI_VARIABLE_NON_VOLATILE | EFI_VARIABLE_BOOTSERVICE_ACCESS | EFI_VARIABLE_RUNTIME_ACCESS UInt32 attr = 0x00000001 | 0x00000002 | 0x00000004; - ST->RuntimeServices->SetVariable(L"/props/boot_path", kEfiGlobalNamespaceVarGUID, &attr, + ST->RuntimeServices->SetVariable(L"/props/kernel_path", kEfiGlobalNamespaceVarGUID, &attr, &kernel_path_sz, kernel_path); } @@ -217,17 +217,18 @@ EFI_EXTERN_C EFI_API Int32 BootloaderMain(EfiHandlePtr image_handle, EfiSystemTa ST->RuntimeServices->GetVariable(L"/props/kern_ver", kEfiGlobalNamespaceVarGUID, nullptr, &sz_ver, &ver); - if (ver != KERNEL_VERSION_BCD) { + if (ver < KERNEL_VERSION_BCD) { ver = KERNEL_VERSION_BCD; ST->RuntimeServices->SetVariable(L"/props/kern_ver", kEfiGlobalNamespaceVarGUID, nullptr, &sz_ver, &ver); - writer.Write("BootZ: version has been updated: ").Write(ver).Write("\r"); - } - writer.Write("BootZ: version: ").Write(ver).Write("\r"); + writer.Write("BootZ: Version has been updated: ").Write(ver).Write("\r"); + } else { + writer.Write("BootZ: Version: ").Write(ver).Write("\r"); + } - // boot to kernel, if not netboot this. + // boot to kernel, if not bootnet this. Boot::BootFileReader reader_kernel(kernel_path, image_handle); -- cgit v1.2.3