diff options
Diffstat (limited to 'dev/Boot/src')
| -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 |
