[PATCH 3/5] x86: edison: Align U-Boot via binman to fix the boot
Simon Glass
sjg at chromium.org
Mon Jun 8 01:05:12 CEST 2026
The mask ROM loads the OS image to 0x01100000 but enters it at
0x01101000, so U-Boot must sit 0x1000 (4KB) into the loaded image. This
was arranged by board/intel/edison/config.mk, which prepended 4096 zero
bytes to u-boot.bin through an 'INPUTS-y += u-boot-align.bin' rule whose
recipe moved its output back over u-boot.bin.
Commit bd3f9ee679b4 ("kbuild: Bump the build system to 6.1") stopped
that rule from running, so u-boot.bin no longer gains the 4KB prefix.
The mask ROM then jumps 4KB into U-Boot's code and the board never
starts, sitting in BootROM download mode (DnX) and cycling.
Since the Edison image is assembled by binman, provide the gap there
instead: pad with a 'fill' of 4096 zero bytes ahead of the u-boot entry.
Drop the now-redundant alignment hack from the board config.mk.
Fixes: bd3f9ee679b4 ("kbuild: Bump the build system to 6.1")
Signed-off-by: Simon Glass <sjg at chromium.org>
---
arch/x86/dts/edison.dts | 11 ++++++++++-
board/intel/edison/config.mk | 10 ----------
2 files changed, 10 insertions(+), 11 deletions(-)
diff --git a/arch/x86/dts/edison.dts b/arch/x86/dts/edison.dts
index 9c7630161e9..05391d49d02 100644
--- a/arch/x86/dts/edison.dts
+++ b/arch/x86/dts/edison.dts
@@ -175,8 +175,17 @@
intel-osip {
};
+ /*
+ * The OSII loads the image to 0x01100000 but enters it at
+ * 0x01101000, so U-Boot must sit 0x1000 (4KB) into the loaded
+ * data. Pad with zeroes ahead of U-Boot to provide that gap.
+ */
+ fill {
+ size = <0x1000>;
+ fill-byte = [00];
+ };
+
u-boot {
- offset = <0x200>;
};
u-boot-env {
diff --git a/board/intel/edison/config.mk b/board/intel/edison/config.mk
index 3afebf0f0b1..da7c9acf1a2 100644
--- a/board/intel/edison/config.mk
+++ b/board/intel/edison/config.mk
@@ -4,14 +4,4 @@
# Copyright (c) 2017 Intel Corporation
#
-# Add 4096 bytes of zeroes to u-boot.bin
-quiet_cmd_mkalign_eds = EDSALGN $@
-cmd_mkalign_eds = \
- dd if=$^ of=$@ bs=4k seek=1 2>/dev/null && \
- mv $@ $^
-
-INPUTS-y += u-boot-align.bin
-u-boot-align.bin: u-boot.bin FORCE
- $(call if_changed,mkalign_eds)
-
HOSTCFLAGS_include/autoconf.mk.dep = -Wno-variadic-macros
--
2.43.0
More information about the U-Boot
mailing list