From c0e474fa328e27fa0a44e9b57543f269b70c5816 Mon Sep 17 00:00:00 2001 From: Yi-Ting Shih Date: Tue, 18 Mar 2025 09:25:48 +0800 Subject: [PATCH] Fix: on board --- Makefile | 2 +- bootloader/main.c | 2 +- kernel/linker.ld | 8 ++++---- misc/bootcode.bin | Bin 0 -> 52476 bytes misc/config.txt | 3 ++- misc/fixup.dat | Bin 0 -> 7269 bytes upload.py | 6 ++++-- 7 files changed, 12 insertions(+), 9 deletions(-) create mode 100644 misc/bootcode.bin create mode 100644 misc/fixup.dat diff --git a/Makefile b/Makefile index 145cdf7..f597f56 100644 --- a/Makefile +++ b/Makefile @@ -38,7 +38,7 @@ OBJS := $(SRCS:%=%.o) .PHONY: all build clean clean_target run kernel debug gdb -all: +all: $(CPIO) $(MAKE) build TARGET_DIR=./kernel TARGET=kernel8 $(MAKE) build TARGET_DIR=./bootloader TARGET=bootloader diff --git a/bootloader/main.c b/bootloader/main.c index dd7d1de..0db6ea6 100644 --- a/bootloader/main.c +++ b/bootloader/main.c @@ -14,7 +14,7 @@ void main(void *dtb) uart_puts("waiting for kernel to be sent ..." ENDL); union { - int size; + int32_t size; uint8_t buf[4]; } kernel_header; kernel_header.size = 0; diff --git a/kernel/linker.ld b/kernel/linker.ld index c70588a..c32ee2b 100644 --- a/kernel/linker.ld +++ b/kernel/linker.ld @@ -1,10 +1,10 @@ ENTRY(_start) MEMORY { - TEXT (rx) : ORIGIN = 0x80000, LENGTH = 128K - RO (r) : ORIGIN = 0xa0000, LENGTH = 128K - DATA (rw) : ORIGIN = 0x100000, LENGTH = 512K - RAM (rw) : ORIGIN = 0x180000, LENGTH = 64M + TEXT (rx) : ORIGIN = 0x80000, LENGTH = 64K + RO (r) : ORIGIN = 0x90000, LENGTH = 16K + DATA (rw) : ORIGIN = 0x94000, LENGTH = 64K + RAM (rw) : ORIGIN = 0xa4000, LENGTH = 64M } SECTIONS diff --git a/misc/bootcode.bin b/misc/bootcode.bin new file mode 100644 index 0000000000000000000000000000000000000000..9e831a2739767f9d7204f5d90dd8d352f11b7daa GIT binary patch literal 52476 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