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

Neha Malcom Francis
2022-06-15T06:49:49Z

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@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";
+ 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";
+ };
+ };
+ };
+ 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"
--
2.17.1