On Sat, Jun 20, 2026 at 04:07:33PM +0100, Quentin Strydom wrote: > Thanks, that makes sense. > > Just to clarify, I reproduced and tested this with QEMU’s ast2600-evb > machine rather than physical AST2600 hardware. > > I checked the SPL section layout and I think you are right that the better > fix is in the AST2600 SPL linker script rather than in scripts/Makefile.xpl. > > With the v1 Makefile fix reverted, the mismatch was: > > sizeof(spl/u-boot-spl-nodtb.bin) = 0xc92c > _image_binary_end = 0xc930 > > The last emitted section was __u_boot_list, ending at 0xc92c, while > _image_binary_end was advanced to 0xc930 by the alignment associated with > .binman_sym_table. In this build .binman_sym_table did not contribute > emitted contents, so objcopy -O binary did not include those alignment > bytes in spl/u-boot-spl-nodtb.bin. > > I have tested a v2 which moves the 8-byte alignment into the emitted > __u_boot_list section. With that change: > > sizeof(spl/u-boot-spl-nodtb.bin) = 0xc930 > _image_binary_end = 0xc930 > > The appended SPL DTB starts at 0xc930, and the external-DTB build boots > successfully under QEMU with: > > qemu-system-arm -M ast2600-evb,execute-in-place=on,bmc-console=uart5 \ > -drive file=flash.img,format=raw,if=mtd -nographic > > I have sent v2 with the linker-script fix.
Ah, so we've just been lucky in CI then, OK. Thanks for looking more at this! -- Tom
signature.asc
Description: PGP signature

