[PATCH v4 4/7] rockchip: Support building the all output files in binman
Quentin Schulz
quentin.schulz at theobroma-systems.com
Mon Nov 7 15:45:32 CET 2022
Hi Simon,
On 11/6/22 23:40, Simon Glass wrote:
> Add the required binman images to replace the Makefile rules which are
> currently used. This includes subsuming:
>
> - tpl/u-boot-tpl-rockchip.bin if TPL is enabled
> - idbloader.img if either or both of SPL and TPL are enabled
> - u-boot.itb if SPL_FIT is enabled
> - u-boot-rockchip.bin if SPL is used, either using u-boot.itb when
> SPL_FIT is enabled or u-boot.img when it isn't
>
> Note that the intermediate files are dropped with binman, since it
> producing everything in one pass. This means that
> tpl/u-boot-tpl-rockchip.bin is not created, for example.
>
> Note that for some 32-bit rk3288 boards, rockchip-optee.dtsi is included.
>
> Signed-off-by: Simon Glass <sjg at chromium.org>
> ---
>
> (no changes since v3)
>
> Changes in v3:
> - Add an offset to the FIT description
>
> Changes in v2:
> - Rename op-tee to tee-os
> - Drop use of .itb2
>
> arch/arm/dts/rockchip-u-boot.dtsi | 73 ++++++++++++++++++++++++++++---
> 1 file changed, 68 insertions(+), 5 deletions(-)
>
> diff --git a/arch/arm/dts/rockchip-u-boot.dtsi b/arch/arm/dts/rockchip-u-boot.dtsi
> index 584f21eb5bf..084f72b0bd4 100644
> --- a/arch/arm/dts/rockchip-u-boot.dtsi
> +++ b/arch/arm/dts/rockchip-u-boot.dtsi
> @@ -30,14 +30,77 @@
> };
> };
>
> -#ifdef CONFIG_ARM64
> - blob {
> +#if defined(CONFIG_SPL_FIT) && defined(CONFIG_ARM64)
> + fit: fit {
Please also update blob => fit in
arch/arm/dts/rk3399-puma-haikou-u-boot.dtsi in that same commit
otherwise it breaks the board.
> + description = "FIT image for U-Boot with bl31 (TF-A)";
> + #address-cells = <1>;
> + fit,fdt-list = "of-list";
> filename = "u-boot.itb";
> + fit,external-offset = <CONFIG_FIT_EXTERNAL_OFFSET>; > + offset = <CONFIG_SPL_PAD_TO>;
> + images {
> + u-boot {
> + description = "U-Boot (64-bit)";
> + type = "standalone";
> + os = "U-Boot";
> + arch = "arm64";
> + compression = "none";
> + load = <CONFIG_TEXT_BASE>;
> + u-boot-nodtb {
> + };
> + };
> +
> + @atf-SEQ {
> + fit,operation = "split-elf";
> + description = "ARM Trusted Firmware";
> + type = "firmware";
> + arch = "arm64";
> + os = "arm-trusted-firmware";
> + compression = "none";
> + fit,load;
> + fit,entry;
> + fit,data;
> +
> + atf-bl31 {
> + };
> + };
> + @tee-SEQ {
> + fit,operation = "split-elf";
> + description = "TEE";
> + type = "tee";
> + arch = "arm64";
> + os = "tee";
> + compression = "none";
> + fit,load;
> + fit,entry;
> + fit,data;
> +
> + tee-os {
> + };
> + };
> +
> + @fdt-SEQ {
> + description = "fdt-NAME";
> + compression = "none";
> + type = "flat_dt";
> + };
> + };
> +
> + configurations {
> + default = "@config-DEFAULT-SEQ";
> + @config-SEQ {
> + description = "NAME.dtb";
> + fdt = "fdt-SEQ";
> + firmware = "u-boot";
> + fit,loadables;
> + };
> + };
> + };
> #else
> u-boot-img {
> -#endif
> offset = <CONFIG_SPL_PAD_TO>;
> };
> +#endif
> };
>
> #ifdef CONFIG_ROCKCHIP_SPI_IMAGE
same blob to fit change needs to be done for Rockchip SPI image than
done for u-boot-rockchip.bin.
Cheers,
Quentin
More information about the U-Boot
mailing list