diff options
| author | Amlal El Mahrouss <amlal.elmahrouss@icloud.com> | 2025-01-04 12:04:32 +0100 |
|---|---|---|
| committer | Amlal El Mahrouss <amlal.elmahrouss@icloud.com> | 2025-01-04 12:04:32 +0100 |
| commit | 179b2fcaeb7d1ce1710c4957c2b9848f3f60bbb8 (patch) | |
| tree | 27f7ff7e0a54e5b30c80458956f4612b9570d319 /dev/Boot/src/HEL | |
| parent | 45f6db992d305c9937056e9f7e7205677143d94c (diff) | |
ADD: AHCI Metadata support, and working towards I/O support.
Signed-off-by: Amlal El Mahrouss <amlal.elmahrouss@icloud.com>
Diffstat (limited to 'dev/Boot/src/HEL')
| -rw-r--r-- | dev/Boot/src/HEL/AMD64/EFIBootStartup.cc (renamed from dev/Boot/src/HEL/AMD64/BootMain.cc) | 2 | ||||
| -rw-r--r-- | dev/Boot/src/HEL/ARM64/CoreBootStartup.S | 36 | ||||
| -rw-r--r-- | dev/Boot/src/HEL/ARM64/EFIBootStartup.cc (renamed from dev/Boot/src/HEL/ARM64/BootMain.cc) | 0 |
3 files changed, 38 insertions, 0 deletions
diff --git a/dev/Boot/src/HEL/AMD64/BootMain.cc b/dev/Boot/src/HEL/AMD64/EFIBootStartup.cc index f2d6276b..5b05e1bb 100644 --- a/dev/Boot/src/HEL/AMD64/BootMain.cc +++ b/dev/Boot/src/HEL/AMD64/EFIBootStartup.cc @@ -218,6 +218,7 @@ EFI_EXTERN_C EFI_API Int32 Main(EfiHandlePtr image_handle, syschk_thread->SetName("BootZ: System Recovery Check"); } +#if 0 Boot::BDiskFormatFactory<BootDeviceATA> partition_factory; if (syschk_thread->Start(handover_hdr, NO) != kEfiOk) @@ -244,6 +245,7 @@ EFI_EXTERN_C EFI_API Int32 Main(EfiHandlePtr image_handle, fb_clear(); } } +#endif // ------------------------------------------ // // null these fields, to avoid being reused later. diff --git a/dev/Boot/src/HEL/ARM64/CoreBootStartup.S b/dev/Boot/src/HEL/ARM64/CoreBootStartup.S new file mode 100644 index 00000000..ee2dd3ec --- /dev/null +++ b/dev/Boot/src/HEL/ARM64/CoreBootStartup.S @@ -0,0 +1,36 @@ +/* ------------------------------------------- + + Copyright (C) 2024, Theater Quality Corp, all rights reserved. + +------------------------------------------- */ + +.section .boot_hdr +.align 4 + +/* BootZ boot header begin */ + +boot_hdr_mag: + .ascii "CB" +boot_hdr_name: + // it has to match ten bytes. + .asciz "zbaosldr\0\0" +boot_hdr_ver: + .word 0x104 +boot_hdr_proc: + .long bootloader_start + +/* BootZ boot header end */ + +.extern bootloader_main +.extern bootloader_stack + +.globl bootloader_start +bootloader_start: + adr x0, bootloader_stack + ldr x1, =bootloader_start + sub x0, x0, x1 + ldr x0, [x0] + mov sp, x0 + + bl bootloader_main + ret
\ No newline at end of file diff --git a/dev/Boot/src/HEL/ARM64/BootMain.cc b/dev/Boot/src/HEL/ARM64/EFIBootStartup.cc index 4d303c33..4d303c33 100644 --- a/dev/Boot/src/HEL/ARM64/BootMain.cc +++ b/dev/Boot/src/HEL/ARM64/EFIBootStartup.cc |
