summaryrefslogtreecommitdiffhomepage
path: root/dev/boot/modules
AgeCommit message (Collapse)Author
2025-05-11feat(kernel/hefs): Fixed the shortcomings and issues of HeFS.Amlal El Mahrouss
Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
2025-05-05feat(kernel): new HeFS version, scheduler allocation tree improvements and ↵0.0.2e1Amlal
reintroduce VEPM. why? - The extents structure on HeFS has to be clearer. - The allocation tracker group has to be organized according to pointer size. - VEPM was scraped because HeFS took time, so now I can focus on it now. Signed-off-by: Amlal <amlal@nekernel.org>
2025-04-30kernel: keep track of cr3 in AMD HAL/HEL.Amlal
why? To keep track of it, avoid security issues in the future. Signed-off-by: Amlal <amlal@nekernel.org>
2025-04-30kernel: filesystem+vmem: don't be verbose on the allocator when we don't ↵Amlal
need it. details: - Reworked HeFS traversal algorithm, fixing last parts of HeFS regarding IND allocation. Signed-off-by: Amlal <amlal@nekernel.org>
2025-04-27dev, kernel: HeFS had to be redesigned to be less problematic with hard-drives.Amlal
why? the struct were way too big to fit wihin a sector. Signed-off-by: Amlal <amlal@nekernel.org>
2025-04-27dev, kernel: AHCI, HeFS filesystem, SysChk, and BootSATA improvements.Amlal
what? - AHCI now writes to disk, forgot to do it. - Codebase's architecutre has been used to reuse the Generic+AHCI driver in SysChk for AHCI. (tradeoff is 256K in size instead of 36K) - DriveMgr now detects EPM. - And HeFS is still being worked on. Signed-off-by: Amlal <amlal@nekernel.org>
2025-04-25dev: better .clang-format, ran format command.Amlal
Signed-off-by: Amlal <amlal@nekernel.org>
2025-04-25dev, boot, kernel: improvements, and fixing the VEPM formatter.Amlal
Signed-off-by: Amlal <amlal@nekernel.org>
2025-04-24dev, BootNet: improved the protocol headers and implementation.Amlal El Mahrouss
Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
2025-04-22dev, boot: fixed nasty bugs inside bootloader.Amlal El Mahrouss
Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
2025-04-22dev, kernel: WiP changes done to kernel and SysChk module.Amlal El Mahrouss
- Getting SysChk to work again. - Refactor scheduler. Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
2025-04-22dev, kernel: VEPM WiP implementation, and syschk fixes in WiP.Amlal El Mahrouss
- Currently working on VEPM and adapting it to SysChk. - Refactor DriveMgr for VEPM. - Fix warnings in HeFS.cc, ALIGN(8) on HeFS.h - Update PIO modules to use VEPM. Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
2025-04-19kernel, mod, boot: extend GPT support.Amlal El Mahrouss
Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
2025-04-18kernel, boot: improvements and tweaks on the kernel's filesystems.Amlal El Mahrouss
- HeFS requires a 4gb disk at minimum now. - make_app fully supports STEPS. - Errata of NeFS.tex, add HeFS.tex. - Better boot flow. - New filesystems for FileMgr. Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
2025-04-17kernel, boot: recovering lost changes because of some git issue.Amlal El Mahrouss
Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
2025-04-16dev, kernel, boot: fix dumb early-init which caused the kernel to jumpAmlal El Mahrouss
at IVT. Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
2025-04-15fix, kernel, boot, mod: Fixing issues regarding the boot flow and theAmlal El Mahrouss
kernel. Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
2025-04-14meta: bumping sources.Amlal El Mahrouss
Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
2025-04-14bootloader, netboot: integrate EFI_SIMPLE_NETWORK_PROTOCOL for HTTP-based ↵Amlal El Mahrouss
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 <amlal@nekernel.org>
2025-04-12fix, bootnet: The memset has been moved before reading the UDP packet,Amlal El Mahrouss
in order to prevent memory being cleared. Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
2025-04-10kernel, boot: a lot of improvements regarding memory probing.Amlal El Mahrouss
Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
2025-04-10dev, meta: minor tweaks and improvements.Amlal El Mahrouss
Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
2025-04-08boot: urgent nekernel patches.Amlal El Mahrouss
Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
2025-04-07modules, BootNet: comment wrongfully mentioned 'address'.Amlal El Mahrouss
- Mentioned 'packet' instead of 'address' Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
2025-04-05kernel: storage, modules, mbci: implement mbci_read_auth_key, ↵Amlal El Mahrouss
mbci_test_mmio, test DMA on AHCI too. - Alongside fixes for BootNet, SysChk, and refactor for KernelScheduler, and MemoryMgr. - IMPORTANT: Add MBCI specs. Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
2025-04-02boot/net: rename Boot.S files, clarify EEPROM implication, and prep UDP readAmlal El Mahrouss
- Renamed Boot.S → BootNetStartup.S and SysChk/Boot.S → SysChkStartup.S for clarity - Replaced BOOTNET_INTERNET_HEADER.ImpliesEEPROM with ImpliesProgram to better reflect the generic reprogramming intent - Introduced `bootnet_read_udp_packet()` stub for future UDP packet parsing from bootnet.json - Minor alignment and comment fixes in various headers (CoreBoot, EPM, Json) - Updated HalPagingMgr to use PageStore instead of NE_PAGE_STORE - Boot time now prints cycles since start; triggered fs_init_nefs() earlier during HAL init - Prep for extended MBCI and master structure support in COREBOOT_LINEAR_EXEC - Numerous cleanups across DMA, NewKit, and Json parsing to prep for extended patching and block-level bootstrap This lays groundwork for richer NetBoot infrastructure in NeKernel and aligns naming and structure conventions across subsystems. Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
2025-04-01boot, kernel, modules: unify gfx headers, fix AHCI LBA48, standardize ModuleMainAmlal El Mahrouss
- Consolidated CoreGfx headers: * Renamed `FBMgr.h` to `CoreGfx.h` * Renamed `TextMgr.h` → `TextGfx.h`, `MathMgr.h` → `MathGfx.h`, and `AccessibilityMgr.h` → `CoreAccess.h` * Updated all includes across bootloader, HAL, and kernel to use new names - Standardized EFI entrypoint: * Replaced `Main` with `ModuleMain` in EFI boot sources and linker flags * Updated GDB and build scripts accordingly - Improved AHCI identify logic: * Added full 48-bit LBA extraction (words 100–102) * Fallback to 28-bit if LBA48 not supported * Refactored `drv_get_size` and `drv_std_detected` into separate `#ifdef __AHCI__` region - DiskImage framework improvements: * Namespaced API into `DI` namespace * Split implementation: `DiskImage+EPM.cc` and `DiskImage+NeFS.cc` * Updated CLI tool accordingly - KernelTest framework: * Namespaced macros and classes with `KT_` * Changed test result to use `MUST_PASS` and boolean return - Misc: * Corrected minor logic in `NetworkDevice::Name()` * Bumped down KernelKit and NewKit versions to 0.0.1 * Renamed `HalUtils.asm` → `HalUtilsAPI.asm` Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
2025-03-31firmware/netboot: final refactors regarding netboot.Amlal El Mahrouss
Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
2025-03-31boot: fix framebuffer init and restore boot on real hardwareAmlal El Mahrouss
Framebuffer mode selection now defaults gracefully when the expected resolution is unavailable. EFI binaries now boot successfully on physical hardware using a fixed image base and simplified jump logic. Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
2025-03-31efi: make it fit the 8.3 limit (FAT)Amlal El Mahrouss
Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
2025-03-31meta/repository: fix capitalization on my name 'El' instead of 'EL'.Amlal El Mahrouss
Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
2025-03-28ahci: fix: report success when ahci is detected.Amlal El Mahrouss
mbci: reintroduce NeKernel's MBCI. cfkit: rename: CFKit -> CF libuser: rename ErrKind to ErrRef. coregfx: fix last unconsistent things about the module. Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
2025-03-28kernel: breaking: Change namespace from NeOS to Kernel.Amlal El Mahrouss
sched: Fix redundancy in NeKernel's user scheduler macros, refactored the other files using the redundant macros too. part one of a series of commit for NeKernel. Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
2025-03-28bootz: rename NetBoot module to BootNetAmlal El Mahrouss
Rename the NetBoot module to BootNet to avoid confusion with Apple's NetBoot and better reflect the module's role within BootZ. Updates include: - Renamed module directory: NetBoot/ → BootNet/ - Renamed files and headers: NetBoot.cc → BootNet.cc, etc. - Updated build output: netboot.sys → bootnet.sys - Replaced all references in build scripts, source includes, and user-visible strings - Fixed typo in SysChk.cc copyright This unifies naming across modules and reinforces BootZ's modular identity. Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
2025-03-28bootz: consolidate EFI namespace into Boot, finalize NetBoot fallbackAmlal El Mahrouss
Collapse the EFI namespace into Boot to unify BootZ's interface for firmware handling. This simplifies calls to functions like Stop(), ThrowError(), and ExitBootServices(), and improves consistency across boot modules. Also rename SysChk/Module.cc to SysChk/SysChk.cc for naming consistency with other modules. Improve NetBoot fallback path in BootEFI: - Ensure netboot.sys is read before ExitBootServices() to avoid allocation issues after exiting firmware services. - Reuse reader and thread objects if kernel boot fails. - Update both AMD64 and ARM64 paths to follow the same logic. Update all call sites to use Boot:: instead of EFI::. Fixes: broken error handling and memory reads after ExitBootServices() Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
2025-03-27BootZ: Introduce NetBoot module & consolidate STANDALONE macroAmlal El Mahrouss
- Renamed __BOOTLDR_STANDALONE__ → __BOOTZ_STANDALONE__ across all modules. - Introduced NetBoot module to support fallback booting via packets. - Updated amd64-desktop build to bundle netboot.sys as part of system image. - NetBoot now properly zeroes out its header and performs sanity check on PatchLength. - Boot flow now attempts to fallback to NetBoot if neoskrnl.exe fails to start. - Reorganized disk formatting logic for clarity and better failure recovery. - HeFS & NeFS minimum disk size lowered (64GiB → 256MiB and 4GiB → 8MiB). - Renamed `IndexProperty` to `Index` in FSKit::Indexer. - Moved HintKit → hint/, updated includes and guards. - Removed deprecated LPC.{cc,h}, replaced by ProcessCodes.h. - Modernized SystemCalls.h typedefs: SCIObject → Ref, ThreadObject → ThreadRef, etc. - Updated userland tools `make_app` and `open` with copyright and behavior fixes. This prepares the BootZ infrastructure for headless/network environments. Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
2025-03-27meta: forgot to commit previous change of NetBoot's build.json -> amd64.jsonAmlal El Mahrouss
Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
2025-03-27add: new driver device kit API. (DDK)Amlal El Mahrouss
refactor: rename SCIKit -> user (then libuser.dylib) boot/modules/netboot: fixed compilation for amd64. Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
2025-03-23kernel(fix): Last fixes in order to build NeKernel, and fix CI.Amlal El Mahrouss
Signed-off-by: Amlal El Mahrouss <amlal.elmahrouss@icloud.com>