Hi Quentin, On 2025-02-11 11:29, Quentin Schulz wrote: > From: Quentin Schulz <quentin.sch...@cherry.de> > > Essentially the only differences between u-boot-rockchip.bin and > u-boot-rockchip-spi.bin are the formatting of idbloader.img which is > handled by mkimage (via -T rkspi/rksd) and the offset at which U-Boot > proper is flashed, the content of the binaries are identical otherwise. > > This fixes some issues[1] where binman tries to find the symbols defined > in the proper binary to install them in an xPL binary. However, because > we use the binary for proper (on Aarch64) generated in simple-bin image > node and not simple-bin-spi image node, binman doesn't have access to > that symbol anymore. Therefore, let's depend entirely on binaries built > by simple-bin in simple-bin-spi so those issues do not arise anymore as > nothing is compiled essentially, just assembled. > > [1] https://lore.kernel.org/u-boot/20250129132529.807031-3-na...@radxa.com/ > Signed-off-by: Quentin Schulz <quentin.sch...@cherry.de> > --- > arch/arm/dts/rockchip-u-boot.dtsi | 10 ++++++++++ > 1 file changed, 10 insertions(+) > > diff --git a/arch/arm/dts/rockchip-u-boot.dtsi > b/arch/arm/dts/rockchip-u-boot.dtsi > index > c8c928c7e5089db3a2239f2564e6dee1d82aad95..2e8a3bd09e49ed73a8cea3fadfb6d2b592082365 > 100644 > --- a/arch/arm/dts/rockchip-u-boot.dtsi > +++ b/arch/arm/dts/rockchip-u-boot.dtsi > @@ -187,18 +187,28 @@ > }; > #elif defined(CONFIG_TPL) > u-boot-tpl { > + type = "blob"; > + /* sync with > /binman/simple-bin/mkimage/u-boot-tpl */ > + filename = "tpl/u-boot-tpl.bin"; > }; > #endif > u-boot-spl { > + type = "blob"; > + /* sync with > /binman/simple-bin/mkimage/u-boot-spl */ > + filename = "spl/u-boot-spl.bin"; > }; > }; > > #if defined(CONFIG_ARM64) || defined(CONFIG_SPL_OPTEE_IMAGE) > fit { > type = "blob"; > + /* sync with /binman/simple-bin/fit */ > filename = "u-boot.itb"; > #else > u-boot-img { > + type = "blob"; > + /* sync with /binman/simple-bin/u-boot-img */ > + filename = "u-boot.img"; > #endif > /* Sync with u-boot,spl-payload-offset if present */ > offset = <CONFIG_SYS_SPI_U_BOOT_OFFS>; >
I think changing to using a template may suit binman better, however it will be at the expense of having to re-generate the FIT, not sure what option is best. It would be great if Simon can split out the rockchip-u-boot.dtsi improvement commits in a separate series as I suggested in [2]. That patch also solve the build issue this patch intend to fix. [2] https://patchwork.ozlabs.org/project/uboot/patch/20250209211502.2299245-15-...@chromium.org/ Regards, Jonas