U-Boot
U-Boot on the Neo FreeRunner | |
Name | Das U-Boot |
---|---|
1st stage |
Works |
2nd stage |
Works |
Resources | homepage source code |
U-Boot (Das U-Boot) is a first-stage and second-stage bootloader used primarily in embedded devices to handle the booting instructions to boot an operating system kernel.
v2020.10 or older
U-Boot v2020.10 or older fail to compile, requiring a patch to be applied
--- a/Makefile
+++ b/Makefile
@@ -970,6 +970,8 @@
# Avoid 'Not enough room for program headers' error on binutils 2.28 onwards.
LDFLAGS_u-boot += $(call ld-option, --no-dynamic-linker)
+LDFLAGS_u-boot += -z notext $(call ld-option, --apply-dynamic-relocs)
+
ifeq ($(CONFIG_ARC)$(CONFIG_NIOS2)$(CONFIG_X86)$(CONFIG_XTENSA),)
LDFLAGS_u-boot += -Ttext $(CONFIG_SYS_TEXT_BASE)
endif