[PATCH RFC v3 10/11] ti: dtsi: j721e: Use binman to package tispl.bin

Alper Nebi Yasak alpernebiyasak at gmail.com
Fri Jul 1 21:08:09 CEST 2022


On 15/06/2022 09:48, Neha Malcom Francis wrote:
> tispl.bin must be packaged (with ATF, OPTEE, DM and A72 SPL) for J721E.
> Binman picks up and packages entries according to the
> description given in the device tree.
> 
> k3-j721e-a72-binman.dtsi has been introduced for A72 specific binman
> node. It is included by k3-j721e-common-proc-board-u-boot.dtsi
> 
> Signed-off-by: Neha Malcom Francis <n-francis at ti.com>
> ---
>  arch/arm/dts/k3-j721e-a72-binman.dtsi         | 86 +++++++++++++++++++
>  .../k3-j721e-common-proc-board-u-boot.dtsi    |  1 +
>  board/ti/j721e/Kconfig                        |  1 +
>  3 files changed, 88 insertions(+)
>  create mode 100644 arch/arm/dts/k3-j721e-a72-binman.dtsi
> 
> diff --git a/arch/arm/dts/k3-j721e-a72-binman.dtsi b/arch/arm/dts/k3-j721e-a72-binman.dtsi
> new file mode 100644
> index 0000000000..beb3424bb9
> --- /dev/null
> +++ b/arch/arm/dts/k3-j721e-a72-binman.dtsi
> @@ -0,0 +1,86 @@
> +// SPDX-License-Identifier: GPL-2.0+
> +// Copyright (C) 2022 Texas Instruments Incorporated - https://www.ti.com/
> +
> +#include <config.h>
> +
> +#ifdef CONFIG_ARM64
> +/ {
> +	binman: binman {
> +		multiple-images;
> +	};
> +};
> +
> +&binman {
> +	tispl {
> +		filename = "tispl.bin";

Empty lines for this file as well.

> +		fit {
> +			description = "FIT IMAGE";
> +			#address-cells = <1>;
> +			images {
> +				atf {
> +					description = "ARM Trusted Firmware";
> +					type = "firmware";
> +					arch = "arm64";
> +					compression = "none";
> +					os = "arm-trusted-firmware";
> +					load = <CONFIG_K3_ATF_LOAD_ADDR>;
> +					entry = <CONFIG_K3_ATF_LOAD_ADDR>;
> +					atf-bl31 {
> +					};
> +				};
> +				tee {
> +					description = "OPTEE";
> +					type = "tee";
> +					arch = "arm64";
> +					compression = "none";
> +					os = "tee";
> +					load = <0x9e800000>;
> +					entry = <0x9e800000>;
> +					tee-os {
> +					};
> +				};
> +				dm {
> +					description = "DM binary";
> +					type = "firmware";
> +					arch = "arm32";
> +					compression = "none";
> +					os = "DM";
> +					load = <0x89000000>;
> +					entry = <0x89000000>;
> +					ti-dm {
> +					};
> +				};
> +				spl {
> +					description = "SPL (64-bit)";
> +					type = "standalone";
> +					os = "U-Boot";
> +					arch = "arm64";
> +					compression = "none";
> +					load = <CONFIG_SPL_TEXT_BASE>;
> +					entry = <CONFIG_SPL_TEXT_BASE>;
> +					u-boot-spl-nodtb {
> +					};
> +				};
> +				k3-j721e-common-proc-board.dtb {
> +					description = "k3-j721e-common-proc-board";
> +					type = "flat_dt";
> +					arch = "arm";
> +					compression = "none";
> +					blob-ext {
> +					filename = "spl/dts/k3-j721e-common-proc-board.dtb";

Indentation here, but it could be a u-boot-spl-dtb entry instead. Or,
there's a @fdt-SEQ mechanism to include files based on CONFIG_OF_LIST,
which you might want to look at.

> +					};
> +				};
> +			};
> +			configurations {
> +				default = "conf";
> +				conf {
> +					description = "k3-j721e-common-proc-board";
> +					firmware = "atf";
> +					loadables = "tee", "dm", "spl";
> +					fdt = "k3-j721e-common-proc-board.dtb";
> +				};
> +			};
> +		};
> +	};
> +};
> +#endif
> diff --git a/arch/arm/dts/k3-j721e-common-proc-board-u-boot.dtsi b/arch/arm/dts/k3-j721e-common-proc-board-u-boot.dtsi
> index 677a72d2a2..6490d71f7e 100644
> --- a/arch/arm/dts/k3-j721e-common-proc-board-u-boot.dtsi
> +++ b/arch/arm/dts/k3-j721e-common-proc-board-u-boot.dtsi
> @@ -4,6 +4,7 @@
>   */
>  
>  #include <dt-bindings/net/ti-dp83867.h>
> +#include "k3-j721e-a72-binman.dtsi"
>  
>  / {
>  	chosen {
> diff --git a/board/ti/j721e/Kconfig b/board/ti/j721e/Kconfig
> index a3a9d504ae..3cf05f0d3b 100644
> --- a/board/ti/j721e/Kconfig
> +++ b/board/ti/j721e/Kconfig
> @@ -14,6 +14,7 @@ config TARGET_J721E_A72_EVM
>  	select BOARD_LATE_INIT
>  	imply TI_I2C_BOARD_DETECT
>  	select SYS_DISABLE_DCACHE_OPS
> +	select BINMAN
>  
>  config TARGET_J721E_R5_EVM
>  	bool "TI K3 based J721E EVM running on R5"


More information about the U-Boot mailing list