This patch adds creation of tifalcon.bin for the AM62a, 62p and 62x.
The contents are the same as the existing tispl.bin but A53's SPL and
the FDT have been removed as they are not needed in R5 falcon mode.
This reduces boot time since the payload size is smaller compared to the
regular tispl.bin.
tispl.bin = TFA + TEE + TIFS-STUB + A53 SPL + FDT
tifalcon.bin = TFA + TEE + TIFS-STUB
Signed-off-by: Anshul Dalal <anshuld@ti.com>
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*
+ imx9image* m33-oei-ddrfw* tifalcon.bin
# Directories & files removed with 'make mrproper'
MRPROPER_DIRS += include/config include/generated spl tpl vpl \
};
};
+ ti-falcon {
+ insert-template = <&ti_falcon_template>;
+
+ fit {
+ images {
+ tifsstub-hs {
+ description = "TIFSSTUB";
+ type = "firmware";
+ arch = "arm32";
+ compression = "none";
+ os = "tifsstub-hs";
+ load = <0x9dc00000>;
+ entry = <0x9dc00000>;
+ blob-ext {
+ filename = "tifsstub.bin_hs";
+ };
+ };
+ tifsstub-fs {
+ description = "TIFSSTUB";
+ type = "firmware";
+ arch = "arm32";
+ compression = "none";
+ os = "tifsstub-fs";
+ load = <0x9dc00000>;
+ entry = <0x9dc00000>;
+ blob-ext {
+ filename = "tifsstub.bin_fs";
+ };
+ };
+ tifsstub-gp {
+ description = "TIFSSTUB";
+ type = "firmware";
+ arch = "arm32";
+ compression = "none";
+ os = "tifsstub-gp";
+ load = <0x9dc00000>;
+ entry = <0x9dc00000>;
+ blob-ext {
+ filename = "tifsstub.bin_gp";
+ };
+ };
+ dm {
+ ti-secure {
+ content = <&dm_falcon>;
+ keyfile = "custMpk.pem";
+ };
+ dm_falcon: ti-dm {
+ filename = "ti-dm/am62xx/ipc_echo_testb_mcu1_0_release_strip.xer5f";
+ };
+ };
+ };
+
+ configurations {
+ default = "conf-0";
+ conf-0 {
+ description = "k3-am625-sk-falcon";
+ firmware = "atf";
+ loadables = "tee", "tifsstub-hs", "tifsstub-fs",
+ "tifsstub-gp", "dm";
+ };
+ };
+ };
+ };
+
ti-spl {
insert-template = <&ti_spl_template>;
};
+ ti-falcon {
+ insert-template = <&ti_falcon_template>;
+
+ fit {
+ images {
+ tifsstub-hs {
+ description = "TIFSSTUB";
+ type = "firmware";
+ arch = "arm32";
+ compression = "none";
+ os = "tifsstub-hs";
+ load = <0x9ca00000>;
+ entry = <0x9ca00000>;
+ blob-ext {
+ filename = "tifsstub.bin_hs";
+ };
+ };
+ tifsstub-fs {
+ description = "TIFSSTUB";
+ type = "firmware";
+ arch = "arm32";
+ compression = "none";
+ os = "tifsstub-fs";
+ load = <0x9ca00000>;
+ entry = <0x9ca00000>;
+ blob-ext {
+ filename = "tifsstub.bin_fs";
+ };
+ };
+ dm {
+ ti-secure {
+ content = <&dm_falcon>;
+ keyfile = "custMpk.pem";
+ };
+ dm_falcon: ti-dm {
+ filename = "ti-dm/am62axx/ipc_echo_testb_mcu1_0_release_strip.xer5f";
+ };
+ };
+ };
+
+ configurations {
+ default = "conf-0";
+ conf-0 {
+ description = "k3-am62a7-sk-falcon";
+ firmware = "atf";
+ loadables = "tee", "dm", "tifsstub-hs", "tifsstub-fs";
+ };
+ };
+ };
+ };
+
ti-spl {
insert-template = <&ti_spl_template>;
};
+ ti-falcon {
+ insert-template = <&ti_falcon_template>;
+
+ fit {
+ images {
+ tifsstub-hs {
+ description = "TIFSSTUB";
+ type = "firmware";
+ arch = "arm32";
+ compression = "none";
+ os = "tifsstub-hs";
+ load = <0x9ca00000>;
+ entry = <0x9ca00000>;
+ blob-ext {
+ filename = "tifsstub.bin_hs";
+ };
+ };
+ tifsstub-fs {
+ description = "TIFSSTUB";
+ type = "firmware";
+ arch = "arm32";
+ compression = "none";
+ os = "tifsstub-fs";
+ load = <0x9ca00000>;
+ entry = <0x9ca00000>;
+ blob-ext {
+ filename = "tifsstub.bin_fs";
+ };
+ };
+ dm {
+ ti-secure {
+ content = <&dm_falcon>;
+ keyfile = "custMpk.pem";
+ };
+ dm_falcon: ti-dm {
+ filename = "ti-dm/am62pxx/ipc_echo_testb_mcu1_0_release_strip.xer5f";
+ };
+ };
+ };
+
+ configurations {
+ default = "conf-0";
+ conf-0 {
+ description = "k3-am62p5-sk-falcon";
+ firmware = "atf";
+ loadables = "tee", "dm", "tifsstub-hs", "tifsstub-fs";
+ };
+ };
+ };
+ };
+
ti-spl {
insert-template = <&ti_spl_template>;
end_address = <0x0 0x9fffffff>;
};
+ ti_falcon_template: template-9 {
+ filename = "tifalcon.bin";
+ pad-byte = <0xff>;
+
+ fit {
+ description = "Configuration for 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>;
+ ti-secure {
+ content = <&atf_falcon>;
+ keyfile = "custMpk.pem";
+ };
+ atf_falcon: atf-bl31 {
+ };
+ };
+ tee {
+ description = "OP-TEE";
+ type = "tee";
+ arch = "arm64";
+ compression = "none";
+ os = "tee";
+ load = <CONFIG_K3_OPTEE_LOAD_ADDR>;
+ entry = <CONFIG_K3_OPTEE_LOAD_ADDR>;
+ ti-secure {
+ content = <&tee_falcon>;
+ keyfile = "custMpk.pem";
+ };
+ tee_falcon: tee-os {
+ optional;
+ };
+ };
+ dm {
+ description = "DM binary";
+ type = "firmware";
+ arch = "arm32";
+ compression = "none";
+ os = "DM";
+ load = <0x89000000>;
+ entry = <0x89000000>;
+ };
+
+ };
+ };
+ };
+
};
#endif