From: Quentin Schulz <[email protected]> We may generate two different "simple-bin", one for MMC and one for SPI flashes, respectively named u-boot-rockchip.bin and u-boot-rockchip-spi.bin.
There aren't many differences between the two, namely: - the TPL+SPL called "idbloader" has (for some SoCs) a different type to pass to mkimage arguments, namely rksd vs rkspi, - the FIT can be stored at different offsets for MMC and SPI, the former is typically controlled by CONFIG_SPL_PAD_TO but for the latter it typically is from CONFIG_SYS_SPI_U_BOOT_OFFS, - because of the above, two images are generated, idbloader.img for MMC and idbloader-spi.img for SPI, binman templating allows to override or supplement templates from the inserter side, so let's just do that to remove even more duplication. Signed-off-by: Quentin Schulz <[email protected]> --- arch/arm/dts/rockchip-u-boot.dtsi | 26 +++++++++++--------------- 1 file changed, 11 insertions(+), 15 deletions(-) diff --git a/arch/arm/dts/rockchip-u-boot.dtsi b/arch/arm/dts/rockchip-u-boot.dtsi index 71d7623fe2c..79d0dfd8351 100644 --- a/arch/arm/dts/rockchip-u-boot.dtsi +++ b/arch/arm/dts/rockchip-u-boot.dtsi @@ -163,12 +163,10 @@ }; #endif /* HAS_FIT */ - simple-bin { - filename = "u-boot-rockchip.bin"; + simple_bin_template: template-2 { pad-byte = <0xff>; mkimage { - filename = "idbloader.img"; args = "-n", CONFIG_SYS_SOC, "-T", "rksd"; multiple-data-files; @@ -182,6 +180,15 @@ u-boot-spl { }; }; + }; + + simple-bin { + insert-template = <&simple_bin_template>; + filename = "u-boot-rockchip.bin"; + + mkimage { + filename = "idbloader.img"; + }; #ifdef HAS_FIT fit { @@ -196,23 +203,12 @@ #ifdef CONFIG_ROCKCHIP_SPI_IMAGE simple-bin-spi { + insert-template = <&simple_bin_template>; filename = "u-boot-rockchip-spi.bin"; - pad-byte = <0xff>; mkimage { filename = "idbloader-spi.img"; args = "-n", CONFIG_SYS_SOC, "-T", "rkspi"; - multiple-data-files; - -#ifdef CONFIG_ROCKCHIP_EXTERNAL_TPL - rockchip-tpl { - }; -#elif defined(CONFIG_TPL) - u-boot-tpl { - }; -#endif - u-boot-spl { - }; }; #ifdef HAS_FIT -- 2.52.0

