summaryrefslogtreecommitdiffhomepage
path: root/dev/kernel/HALKit/AMD64/Storage
AgeCommit message (Collapse)Author
2025-05-11dev(kernel:HeFS): Cleanup filesystem and AHCI driver.Amlal El Mahrouss
Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
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-11dev(fix:AHCI): explicitly say that these functions are unused (when weAmlal El Mahrouss
compile with another profile than AHCI) Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
2025-05-11dev(feat:kernel): Working Core Layer of HeFS (Write/Read)Amlal
Signed-off-by: Amlal <amlal@nekernel.org>
2025-05-10dev(kernel): feat: AHCI driver improvements against 'disk hangs', and HeFS ↵Amlal
has been improved with better traversal, and inode/ind allocation. Signed-off-by: Amlal <amlal@nekernel.org>
2025-05-09dev(kernel, tooling): better code quality inside the codebase and more ↵Amlal
checks inside the kernel, and cli. also: - make use _NeMain for the mk_fwrk tool. Signed-off-by: Amlal <amlal@nekernel.org>
2025-05-08meta(kernel): saving changes to avoid loss.Amlal
Signed-off-by: Amlal <amlal@nekernel.org>
2025-05-07feat(kernel): HeFS fixes, AHCI improvements, and MBCI tweaks.Amlal
why? - Some parts were causing issues on the filesystem. - The slot probe code was naive. - Made the current MBCI implementation clearer. Signed-off-by: Amlal <amlal@nekernel.org>
2025-05-06feat(ahci-generic): validate sector_sz when dealing with AHCI I/O.Amlal
why? - This will cause math exceptions being raised by the CPU if it happens to be zero. Signed-off-by: Amlal <amlal@nekernel.org>
2025-05-01kernel, boot: deprecated current PIO driver, add +Next for future NeKernel ↵Amlal
iterations. other: - In16 -> rt_in16 in BootKit.h why? - Silent corruption with other disk backends. - Better off starting with new work based on this backend but with bug fixes. Signed-off-by: Amlal <amlal@nekernel.org>
2025-05-01kernel: mmap the blob to VMAddress in PEFCodeMgr, alongside other fixes ↵Amlal
regarding memory leaks. Signed-off-by: Amlal <amlal@nekernel.org>
2025-04-29dev(kernel, HeFS): reworking filesystem to find an hybrid solution regarding ↵Amlal
memory footprint (unstable changes) Signed-off-by: Amlal <amlal@nekernel.org>
2025-04-29kernel: Figuring out the EPM header bug; where it gets duplicated when ↵Amlal
writing an IND. (HeFS) Signed-off-by: Amlal <amlal@nekernel.org>
2025-04-28kernel: getting that filesystem to work as intended.Amlal
Signed-off-by: Amlal <amlal@nekernel.org>
2025-04-28dev, kernel: Fixed HeFS directory allocation routine.Amlal
Signed-off-by: Amlal <amlal@nekernel.org>
2025-04-28dev, kernel: HeFS improvements and tweaks.Amlal
Signed-off-by: Amlal <amlal@nekernel.org>
2025-04-28dev, kernel: HeFS, Tooling: reworked the mkfs.hefs tool for the new filesystem.Amlal
other/related: - Add new KPC codes. - Final refactors for HeFS's Format method. - Dma pool improvements. - Better standard disk I/O names. - Add mm_memory_fence function inside HalPagingMgrAMD64.cc 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: refactor and improve parts of the kernel, related to I/OAmlal
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-27dev, kernel: fix copyright header for AHCI.Amlal
Signed-off-by: Amlal <amlal@nekernel.org>
2025-04-27StorageKit: made DMA.h stronger and more resilient.Amlal
Signed-off-by: Amlal <amlal@nekernel.org>
2025-04-27dev, kernel: AHCI support and HeFS improvements, alongside scheduler ↵Amlal
allocation tree fix. Signed-off-by: Amlal <amlal@nekernel.org>
2025-04-27dev, kernel: HeFS and disk related work and improvements.Amlal
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-23dev, kernel: scheduler and disk swap refactors.Amlal El Mahrouss
Details: - Reworked SCSI groundwork to prepare for a Generic SCSI driver. - Refatored scheduler's code with the new coding style for structs. - Add Leak and LeakBlob inside PROCESS_IMAGE struct. Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
2025-04-21dev, kernel: Made HeFS use a RB-Tree traversal algorithm.Amlal El Mahrouss
- ran format command. - a variation of a red-black tree traversal, with customized fallback mechanism. Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
2025-04-19dev, kernel, ahci: AHCI related fixes.Amlal El Mahrouss
Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
2025-04-18kernel, IMP: GfxKit: GraphicsKit.Amlal El Mahrouss
kernel, IMP: StorageKit: Remove usage of cleanup method on AHCI, DMA, and PIO. 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-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-13dev, scheduler, ahci, dev: Refactor scheduler, and fix minor mistakes.Amlal El Mahrouss
Add kDeviceTypeATA in DeviceMgr.h, making NeKernel aware that ATA devices can exist too. The scheduler now won't have to reimplement new classes, I refactor the names to signal that, and they're already generic enough to signal that. The AHCI-Generic driver got cleaned up of any irrelevant code, such as aligning the newly allocated pointer. Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
2025-04-11tweak kernel, boot: use -Wall, -Werror, -Wpedantic now.Amlal El Mahrouss
Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
2025-04-11fix, mm: rework paging system.Amlal El Mahrouss
Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
2025-04-08dev: Urgent patches regarding memory management.Amlal El Mahrouss
Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
2025-04-08kernel, storage, heap, abi: lots of improvements and tweaks.Amlal El Mahrouss
- Please read the commit details for in-depth insights. - Add stack smash prevention code. - Better prevention in BitMap Mgr. Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
2025-04-08storage, ahci: only assign `kSATAPortsImplemented` when init's successful.Amlal El Mahrouss
Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
2025-04-06 adding an align function designed for AHCI's needs and drivemgr'sAmlal El Mahrouss
AHCI detection system. Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
2025-04-05AHCI+Generic.cc: a little but important tweak regarding AHCI genericAmlal El Mahrouss
driver. 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-04kernel, storage: important patches done to AHCI, PIO, PagingMgr, and DMA.Amlal El Mahrouss
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-01kernel/wip: SMP tweaks, and code cleanup.Amlal El Mahrouss
2025-04-01ahci, boot: bump, and working on a patch.Amlal El Mahrouss
Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
2025-04-01kernel/storage, pio, ahci, dma: a lot of patches and fixes according to ↵Amlal El Mahrouss
StorageKit specs and cleaned up DMA driver for a future more robust implementation. 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-31ahci: fix useless '#include "' which is also breaking nekernel's coding ↵Amlal El Mahrouss
standards.
2025-03-31ahci: a set of important patches of generic ahci driver.Amlal El Mahrouss
Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>