summaryrefslogtreecommitdiffhomepage
path: root/src
diff options
context:
space:
mode:
authorAmlal El Mahrouss <amlal@nekernel.org>2025-08-25 14:49:19 +0200
committerAmlal El Mahrouss <amlal@nekernel.org>2025-08-25 14:49:43 +0200
commitb4f96bf19dd34f6cee9e63761782e0978e9dca75 (patch)
treed82a89bcae431163124fe07f4e16ceae77fc7082 /src
parent2835bd8b264d52dc922cc303c0c5e5ddb6aedb99 (diff)
feat! fixed the boot flow and validation in AArch64.
note: - Was already patched in STB. Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
Diffstat (limited to 'src')
-rw-r--r--src/arm64/makefile2
-rw-r--r--src/neboot-start.c12
2 files changed, 6 insertions, 8 deletions
diff --git a/src/arm64/makefile b/src/arm64/makefile
index a85553b..c4e7083 100644
--- a/src/arm64/makefile
+++ b/src/arm64/makefile
@@ -28,7 +28,7 @@ FLAGS_LD= --script=script.lds -o core-boot.elf -nostdlib
OBJCOPY=aarch64-elf-objcopy
EMU=qemu-system-aarch64
-EMU_FLAGS=-M virt -cpu cortex-a57 -bios $(FIRMWARE) -m 256M -d int -smp 2
+EMU_FLAGS=-M virt -cpu cortex-a57 -bios $(FIRMWARE) -device loader,file=$(STAGE2),addr=0x60000000 -m 4G -d int -d guest_errors
WAIT=sleep 1
diff --git a/src/neboot-start.c b/src/neboot-start.c
index 8384791..b72793e 100644
--- a/src/neboot-start.c
+++ b/src/neboot-start.c
@@ -113,7 +113,7 @@ void cb_start_exec(void) {
} else {
cb_put_string("CB> Trying EPM partition...\r\n");
- part_block_t* blk = cb_parse_partition_block_at((voidptr_t) NB_BOOT_ADDR, EPM_PART_BLK_SZ, 0);
+ part_block_t* blk = cb_parse_partition_block_at((voidptr_t) NB_FLASH_BASE_ADDR, EPM_PART_BLK_SZ, 0);
if (blk) {
cb_pci_append_tree("@stage2-epm", (cb_pci_num_t) blk, sizeof(part_block_t) * blk->num_blocks);
@@ -144,12 +144,10 @@ void cb_start_exec(void) {
}
/// end of TODO
-
- if (hart > 1) {
- while (yes) {
- if (__cb_hart_counter == 0) {
- cb_restart_machine();
- }
+
+ while (yes) {
+ if (__cb_hart_counter == 0) {
+ cb_restart_machine();
}
}
}