Move the FIT description into a template so that it can (later) be used in multiple places in the image.
Signed-off-by: Simon Glass <s...@chromium.org> --- arch/arm/dts/rockchip-u-boot.dtsi | 57 ++++++++++++++++++------------- 1 file changed, 34 insertions(+), 23 deletions(-) diff --git a/arch/arm/dts/rockchip-u-boot.dtsi b/arch/arm/dts/rockchip-u-boot.dtsi index da0ac078cb6..8418635ed84 100644 --- a/arch/arm/dts/rockchip-u-boot.dtsi +++ b/arch/arm/dts/rockchip-u-boot.dtsi @@ -19,6 +19,10 @@ #define COMP "none" #endif +#if defined(CONFIG_SPL_FIT) && (defined(CONFIG_ARM64) || defined(CONFIG_SPL_OPTEE_IMAGE)) +#define HAS_FIT +#endif + / { binman: binman { multiple-images; @@ -27,28 +31,9 @@ #ifdef CONFIG_SPL &binman { - simple-bin { - filename = "u-boot-rockchip.bin"; - pad-byte = <0xff>; - - mkimage { - filename = "idbloader.img"; - args = "-n", CONFIG_SYS_SOC, "-T", "rksd"; - multiple-data-files; - -#ifdef CONFIG_ROCKCHIP_EXTERNAL_TPL - rockchip-tpl { - }; -#elif defined(CONFIG_TPL) - u-boot-tpl { - }; -#endif - u-boot-spl { - }; - }; - -#if defined(CONFIG_SPL_FIT) && (defined(CONFIG_ARM64) || defined(CONFIG_SPL_OPTEE_IMAGE)) - fit: fit { +#ifdef HAS_FIT + common_part: template-1 { + type = "fit"; #ifdef CONFIG_ARM64 description = "FIT image for U-Boot with bl31 (TF-A)"; #else @@ -59,7 +44,6 @@ filename = "u-boot.itb"; fit,external-offset = <CONFIG_FIT_EXTERNAL_OFFSET>; fit,align = <512>; - offset = <CONFIG_SPL_PAD_TO>; images { u-boot { description = "U-Boot"; @@ -164,6 +148,33 @@ fit,loadables; }; }; + }; +#endif /* HAS_FIT */ + + simple-bin { + filename = "u-boot-rockchip.bin"; + pad-byte = <0xff>; + + mkimage { + filename = "idbloader.img"; + args = "-n", CONFIG_SYS_SOC, "-T", "rksd"; + multiple-data-files; + +#ifdef CONFIG_ROCKCHIP_EXTERNAL_TPL + rockchip-tpl { + }; +#elif defined(CONFIG_TPL) + u-boot-tpl { + }; +#endif + u-boot-spl { + }; + }; + +#ifdef HAS_FIT + fit { + offset = <CONFIG_SPL_PAD_TO>; + insert-template = <&common_part>; }; #else u-boot-img { -- 2.43.0