On 8/14/2026 3:51 PM, Gokul Praveen wrote: > This patch adds creation of tisemifalcon.bin for J784S4 EVM. > > The contents are the same as the existing tispl.bin but A72's SPL and > the FDT have been removed as they are not needed in semi-falcon mode > and instead UBOOT and its FDT are added. > > This reduces boot time since A72 SPL is skipped. > > tispl.bin = TFA + TEE + DM + A72 SPL + FDT(A72 SPL) > tifalcon.bin = TFA + TEE + DM + UBOOT + FDT(UBOOT) > > Signed-off-by: Gokul Praveen <[email protected]> > --- > Makefile | 2 +- > arch/arm/dts/k3-binman.dtsi | 47 +++++++++++++++++++ > arch/arm/dts/k3-j784s4-binman.dtsi | 65 ++++++++++++++++++++++++++ > arch/arm/dts/k3-j784s4-evm-u-boot.dtsi | 14 ++++++ > 4 files changed, 127 insertions(+), 1 deletion(-) > > diff --git a/Makefile b/Makefile > index c6253670a94..ce2501602f4 100644 > --- a/Makefile > +++ b/Makefile > @@ -2556,7 +2556,7 @@ CLEAN_FILES += include/autoconf.mk* include/bmp_logo.h > include/bmp_logo_data.h \ > idbloader-spi.img lib/efi_loader/helloworld_efi.S *.itb \ > Test* capsule*.*.efi-capsule capsule*.map mkimage.imx-boot.spl \ > mkimage.imx-boot.u-boot mkimage-out.imx-boot.spl > mkimage-out.imx-boot.u-boot \ > - imx9image* m33-oei-ddrfw* tifalcon.bin > + imx9image* m33-oei-ddrfw* tifalcon.bin tisemifalcon.bin > > # Directories & files removed with 'make mrproper' > MRPROPER_FILES += include/config include/generated spl tpl vpl \ > diff --git a/arch/arm/dts/k3-binman.dtsi b/arch/arm/dts/k3-binman.dtsi > index ad127663d03..d82b8630554 100644 > --- a/arch/arm/dts/k3-binman.dtsi > +++ b/arch/arm/dts/k3-binman.dtsi > @@ -543,6 +543,53 @@ > }; > }; > > + ti_semifalcon_template: template-16 { > + filename = "tisemifalcon.bin"; > + pad-byte = <0xff>; > + > + fit { > + description = "Configuration for semi-falcon boot"; > + #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 { > + filename = "bl31.bin"; > + }; > + }; > + tee { > + description = "OP-TEE"; > + type = "tee"; > + arch = "arm64"; > + compression = "none"; > + os = "tee"; > + load = <CONFIG_K3_OPTEE_LOAD_ADDR>; > + entry = <CONFIG_K3_OPTEE_LOAD_ADDR>; > + tee-os { > + filename = "tee-raw.bin"; > + optional; > + }; > + }; > + dm { > + description = "DM binary"; > + type = "firmware"; > + arch = "arm32"; > + compression = "none"; > + os = "DM"; > + load = <0x89000000>; > + entry = <0x89000000>; > + }; > + }; > + }; > + }; > + > }; > > #endif > diff --git a/arch/arm/dts/k3-j784s4-binman.dtsi > b/arch/arm/dts/k3-j784s4-binman.dtsi > index 34b2cc1e681..d109b3d460c 100644 > --- a/arch/arm/dts/k3-j784s4-binman.dtsi > +++ b/arch/arm/dts/k3-j784s4-binman.dtsi > @@ -317,4 +317,69 @@ > }; > }; > }; > + > +&binman{ > + ti_semifalcon: template-17{ > + insert-template = <&ti_semifalcon_template>; > + > + fit { > + images { > + dm { > + ti-dm { > + }; > + }; > + > + uboot { > + description = UBOOT_BOARD_DESCRIPTION; > + type = "firmware"; > + os = "u-boot"; > + arch = "arm"; > + compression = "none"; > + load = <CONFIG_TEXT_BASE>; > + ti-secure { > + content = > <&u_boot_nodtb_semifalcon>; > + keyfile = "custMpk.pem"; > + }; > + u_boot_nodtb_semifalcon: blob-ext { > + filename = "u-boot-nodtb.bin"; > + }; > + hash { > + algo = "crc32"; > + }; > + }; > + > + fdt-0 { > + description = BOARD_DESCRIPTION; > + type = "flat_dt"; > + arch = "arm"; > + compression = "none"; > + > + ti-secure { > + content = > <&j784s4_evm_dtb_semifalcon>; > + keyfile = "custMpk.pem"; > + }; > + > + j784s4_evm_dtb_semifalcon: blob-ext { > + filename = "u-boot.dtb"; > + }; > + > + hash { > + algo = "crc32"; > + }; > + }; > + }; > + > + configurations { > + default = "conf-0"; > + > + conf-0 { > + description = BOARD_DESCRIPTION; > + firmware = "atf"; > + loadables = "tee", "dm", "uboot"; > + fdt = "fdt-0"; > + }; > + }; > + }; > + }; > +}; > #endif > diff --git a/arch/arm/dts/k3-j784s4-evm-u-boot.dtsi > b/arch/arm/dts/k3-j784s4-evm-u-boot.dtsi > index cc0b562d27e..d22cdc09a7e 100644 > --- a/arch/arm/dts/k3-j784s4-evm-u-boot.dtsi > +++ b/arch/arm/dts/k3-j784s4-evm-u-boot.dtsi > @@ -87,6 +87,20 @@ > u-boot-unsigned { > insert-template = <&u_boot_unsigned>; > }; > + > + ti-semifalcon { > + insert-template = <&ti_semifalcon>; > + > + fit { > + images { > + dm { > + ti-dm { > + filename = > "ti-dm/j784s4/ipc_echo_testb_mcu1_0_release_strip.xer5f"; > + }; > + }; > + }; > + }; > + }; > }; > > #endif
Reviewed-by: Neha Malcom Francis <[email protected]> -- Thanking You Neha Malcom Francis
