On Sun, Mar 29, 2026 at 05:04:36PM +0200, J. Neuschäfer via B4 Relay wrote:
> From: "J. Neuschäfer" <[email protected]> > > u-boot-dtb.bin is built by concatenating u-boot-nodtb.bin and u-boot.dtb. > u-boot-nodtb.bin, in turn, is generated by objcopy'ing the contents of > u-boot (U-Boot in ELF format) into a raw file. > > In order to find the bundled FDT (u-boot.dtb), the code in lib/fdtdec.c > uses the _end symbol. Platform-specific linker scripts ensure that _end is > 8-byte aligned, which is required by libfdt. > > For the PowerPC MPC83xx platform, the ALIGN(8) directive was outside a > section, with the unfortunate effect that the potentially generated padding > bytes would not be copied by objcopy. This resulted in a discrepancy > between the _end symbol on the one hand, and the size of u-boot-nodtb.bin > and thus the starting location of the actual FDT on the other side. Under > these conditions, the FDT could not be found and boot would fail early. > > This commit fixes it by moving the ALIGN(8) into the __u_boot_list section, > which is non-empty and thus copied into u-boot-nodtb.bin. > > Signed-off-by: J. Neuschäfer <[email protected]> Sorry for missing this when trying to fix up all the architectures. Reviewed-by: Tom Rini <[email protected]> -- Tom
signature.asc
Description: PGP signature

