diff options
| author | Amlal El Mahrouss <amlal@nekernel.org> | 2025-03-26 20:33:57 +0100 |
|---|---|---|
| committer | Amlal El Mahrouss <amlal@nekernel.org> | 2025-03-26 20:33:57 +0100 |
| commit | 52d1d83119c8f3c2455f09920ad47766210479c7 (patch) | |
| tree | 86b10dee8a427bfdcf2525d155c16d2e2a846153 /dev | |
| parent | 6c09ce86367ef0729a25e58314eefc543aaa83b7 (diff) | |
feat(boot): kern_ver nvram variable.
Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
Diffstat (limited to 'dev')
| -rw-r--r-- | dev/boot/src/HEL/AMD64/BootEFI.cc | 10 | ||||
| -rw-r--r-- | dev/boot/src/docs/KERN_VER.md | 6 | ||||
| -rw-r--r-- | dev/kernel/CompilerKit/Version.h | 3 | ||||
| -rw-r--r-- | dev/kernel/HALKit/AMD64/ReadMe.md | 8 | ||||
| -rw-r--r-- | dev/kernel/HALKit/ARM64/ReadMe.md | 3 | ||||
| -rw-r--r-- | dev/kernel/HALKit/POWER/ReadMe.md | 4 | ||||
| -rw-r--r-- | dev/kernel/HALKit/RISCV/ReadMe.md | 4 | ||||
| -rw-r--r-- | dev/modules/ReadMe.md | 11 |
8 files changed, 18 insertions, 31 deletions
diff --git a/dev/boot/src/HEL/AMD64/BootEFI.cc b/dev/boot/src/HEL/AMD64/BootEFI.cc index 5e2b3855..5af3643b 100644 --- a/dev/boot/src/HEL/AMD64/BootEFI.cc +++ b/dev/boot/src/HEL/AMD64/BootEFI.cc @@ -279,6 +279,14 @@ EFI_EXTERN_C EFI_API Int32 Main(EfiHandlePtr image_handle, ST->RuntimeServices->SetVariable(L"/props/boot_path", kEfiGlobalNamespaceVarGUID, &attr, &kernel_path_sz, kernel_path); } + UInt32 sz_ver = sizeof(UInt64); + UInt64 ver = KERNEL_VERSION_BCD; + + ST->RuntimeServices->GetVariable(L"/props/kern_ver", kEfiGlobalNamespaceVarGUID, nullptr, &sz_ver, &ver); + + Boot::BootTextWriter writer; + writer.Write("BootZ: Kernel Version: ").Write(ver).Write("\r"); + Boot::BootFileReader reader_kernel(kernel_path, image_handle); reader_kernel.ReadAll(0); @@ -292,7 +300,7 @@ EFI_EXTERN_C EFI_API Int32 Main(EfiHandlePtr image_handle, if (reader_kernel.Blob()) { kernel_thread = new Boot::BootThread(reader_kernel.Blob()); - kernel_thread->SetName("BootZ: MicroKernel."); + kernel_thread->SetName("BootZ: Kernel"); handover_hdr->f_KernelImage = reader_kernel.Blob(); } diff --git a/dev/boot/src/docs/KERN_VER.md b/dev/boot/src/docs/KERN_VER.md new file mode 100644 index 00000000..abe3e823 --- /dev/null +++ b/dev/boot/src/docs/KERN_VER.md @@ -0,0 +1,6 @@ +# /props/kern_ver + +The `/props/kern_ver` variable is used to track NeKernel's current version in a BCD format. + +- Use it to track the current's NeKernel version, in order to adapt your drivers to it. +- It is also useful to keep track of it, for other purposes (bug tracking, development of new features)
\ No newline at end of file diff --git a/dev/kernel/CompilerKit/Version.h b/dev/kernel/CompilerKit/Version.h index 11854cd8..9e1d9cce 100644 --- a/dev/kernel/CompilerKit/Version.h +++ b/dev/kernel/CompilerKit/Version.h @@ -5,3 +5,6 @@ /// <COMMIT NUMBER>.<YEAR>.<PROGRAM VERSION> #define BOOTLOADER_VERSION "1104.2025.110" #define KERNEL_VERSION "1104.2025.110" + +#define BOOTLOADER_VERSION_BCD 0x11042025110 +#define KERNEL_VERSION_BCD 0x11042025110 diff --git a/dev/kernel/HALKit/AMD64/ReadMe.md b/dev/kernel/HALKit/AMD64/ReadMe.md deleted file mode 100644 index 02c8c86f..00000000 --- a/dev/kernel/HALKit/AMD64/ReadMe.md +++ /dev/null @@ -1,8 +0,0 @@ -# AMD64 Hardware Abstraction Layer - -## Brief - -- Supported CPU: AMD64 BASED CPUs. -- Supported Firmware: EDK 2. - -###### Copyright (C) 2024-2025, Amlal EL Mahrouss, all rights reserved. All rights reserved. diff --git a/dev/kernel/HALKit/ARM64/ReadMe.md b/dev/kernel/HALKit/ARM64/ReadMe.md deleted file mode 100644 index a2807e5c..00000000 --- a/dev/kernel/HALKit/ARM64/ReadMe.md +++ /dev/null @@ -1,3 +0,0 @@ -# ARM64 Hardware Abstraction Layer - -- Supported Firmware: NeKernel CoreBoot/EDK diff --git a/dev/kernel/HALKit/POWER/ReadMe.md b/dev/kernel/HALKit/POWER/ReadMe.md deleted file mode 100644 index a4919c4a..00000000 --- a/dev/kernel/HALKit/POWER/ReadMe.md +++ /dev/null @@ -1,4 +0,0 @@ -POWER Hardware Abstraction Layer - -- Supported CPU: POWER -- Supported Firmware: NeKernel CoreBoot
\ No newline at end of file diff --git a/dev/kernel/HALKit/RISCV/ReadMe.md b/dev/kernel/HALKit/RISCV/ReadMe.md deleted file mode 100644 index 982a2acb..00000000 --- a/dev/kernel/HALKit/RISCV/ReadMe.md +++ /dev/null @@ -1,4 +0,0 @@ -RISCV64 Hardware Abstraction Layer - -- Supported CPU: RISCV64 -- Supported Firmware: NeKernel CoreBoot
\ No newline at end of file diff --git a/dev/modules/ReadMe.md b/dev/modules/ReadMe.md deleted file mode 100644 index 5e71937f..00000000 --- a/dev/modules/ReadMe.md +++ /dev/null @@ -1,11 +0,0 @@ -# Kernel Modules - -## Brief - -They are pluggable modules for specific hardware support. - -## To-Do - -- [X] AHCI kernel module. - -###### Copyright (C) 2024-2025, Amlal EL Mahrouss, all rights reserved. All rights reserved. |
