summaryrefslogtreecommitdiffhomepage
path: root/dev/kernel/HALKit/AMD64/HalKernelMain.cc
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-02kernel, FS: Mostly patches regarding NeFS's formating and disk write ↵Amlal
implementation. Signed-off-by: Amlal <amlal@nekernel.org>
2025-05-01kernel: scheduler and pef code mgr improvements.Amlal
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-28dev, kernel(hal/amd64): Init filesystem according to FSKit configuration.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: 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, kernel: improve nefs format method, hefs format method.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-24dev, kernel: scheduler, timer: hw timer and scheduler improvements.Amlal El Mahrouss
Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
2025-04-24dev, kernel, boot: HeFS, Scheduler, BootZ: see below.Amlal El Mahrouss
Refactored HeFS node handling and API for extensibility, added directory metadata, improved wildcard querying, and updated documentation accordingly. Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
2025-04-23dev, kernel: necessary refactors regarding future changes.Amlal El Mahrouss
Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
2025-04-23dev, kernel/hal: amd64: made the loop at the end clearer on why itAmlal El Mahrouss
exists and what's the context. Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
2025-04-23dev, kernel/hal: cleanup amd64 kernel main.Amlal El Mahrouss
Signed-off-by: Amlal El Mahrouss <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-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, boot: fix bootloader link error caused by `kTeams`Amlal El Mahrouss
Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
2025-04-22dev, kernel: Milestone towards 0.0.2, see details.Amlal El Mahrouss
Details: - Added support for 512 process teams (kTeams array). - New SwitchTeam() API in UserProcessScheduler. - Kernel main loop rotates active team every 200ms. - Renamed syscall tables for clarity (kSyscalls → kSysCalls, etc.). - Replaced kKernelMaxSystemCalls with kMaxDispatchCallCount. - Updated call sites to match new naming. - Bumped format version to 0x0101. - Added reserved fields to HEFS_BOOT_NODE for future use. - Changed inode indexing logic to operate on (start, size) pairs. Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
2025-04-19dev, kernel: Working on a 0.0.1e (for Errata)Amlal El Mahrouss
Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
2025-04-18dev, fb: did some cleanup on the graphics stack.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-18dev, kernel: important patches.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-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-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-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-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-29hal/amd64: unify GDT/IDT setup and rename I/O opsAmlal El Mahrouss
Normalize descriptor loading logic under Register64. Prefix low-level port and MSR functions with hal_ for consistency. Improve APIC init flow to reflect MADT-based IRQ routing. Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
2025-03-29ddk: refactor: reorganize kit into a standard kernel kit.Amlal El Mahrouss
sched: refactor: refactor scheduler file names, for future additions. xcoff: refactor: document and improve XCOFF for NeFS (regarding Ne's FW) codemgr: refactor: make a difference between kernel and user processes. refactor: document project overall. 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-23meta(kernel): Reworked repository's filesystem structure.Amlal El Mahrouss
Removing useless parts of the project too. Signed-off-by: Amlal El Mahrouss <amlal.elmahrouss@icloud.com>