[PATCH] spl: pad external DTB to _image_binary_end with separate BSS

Tom Rini trini at konsulko.com
Fri Jun 19 22:04:19 CEST 2026


On Fri, Jun 19, 2026 at 11:55:29AM +0100, Quentin Strydom wrote:

> When CONFIG_SPL_SEPARATE_BSS is enabled, fdt_find_separate()
> expects the SPL control DTB at _image_binary_end. However,
> u-boot-spl-dtb.bin is currently generated by concatenating
> u-boot-spl-nodtb.bin and the SPL DTB directly, without padding
> up to _image_binary_end.
> 
> On evb-ast2600 this places the appended SPL DTB at 0xc92c while
> _image_binary_end is 0xc930. The SPL therefore checks four bytes
> past the FDT header and fails early with:
> 
>   Missing DTB
>   No serial driver found
> 
> Add padding between the xPL nodtb binary and the DTB when separate
> BSS is enabled, so the DTB is placed where fdt_find_separate()
> expects it.
> 
> Signed-off-by: Quentin Strydom <qstrydom0 at gmail.com>

I'm glad someone has been able to test this on hardware now, and I'm
sorry it wasn't fixed when dealing with the rest of the fallout here.
I'm not sure this is quite the correct fix however as we should be
ensuring that output file and _image_binary_end agree. What sections
are, and aren't being included when we create the -nodtb.bin file? I
think the place I ended up putting the '. = ALIGN(8)' in commit 
8b0ebe054bb3 ("arm: Update linker scripts to ensure appended device tree
is aligned") ended up not being correct on this platform.

-- 
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 228 bytes
Desc: not available
URL: <https://lists.denx.de/pipermail/u-boot/attachments/20260619/fa5b192f/attachment.sig>


More information about the U-Boot mailing list