// SPDX-License-Identifier: GPL-2.0-or-later OR MIT /* * Copyright 2024 Toradex */ #include "k3-binman.dtsi" &binman { custMpk { filename = "custMpk.pem"; blob-ext { filename = "../../ti/keys/custMpk.pem"; }; }; ti-degenerate-key { filename = "ti-degenerate-key.pem"; blob-ext { filename = "../../ti/keys/ti-degenerate-key.pem"; }; }; }; #ifndef CONFIG_ARM64 &binman { board-cfg { filename = "board-cfg.bin"; bcfg_yaml: ti-board-config { config = "board-cfg.yaml"; schema = "../../ti/common/schema.yaml"; }; }; pm-cfg { filename = "pm-cfg.bin"; rcfg_yaml: ti-board-config { config = "pm-cfg.yaml"; schema = "../../ti/common/schema.yaml"; }; }; rm-cfg { filename = "rm-cfg.bin"; pcfg_yaml: ti-board-config { config = "rm-cfg.yaml"; schema = "../../ti/common/schema.yaml"; }; }; sec-cfg { filename = "sec-cfg.bin"; scfg_yaml: ti-board-config { config = "sec-cfg.yaml"; schema = "../../ti/common/schema.yaml"; }; }; combined-tifs-cfg { filename = "combined-tifs-cfg.bin"; ti-board-config { bcfg_yaml_tifs: board-cfg { config = "board-cfg.yaml"; schema = "../../ti/common/schema.yaml"; }; scfg_yaml_tifs: sec-cfg { config = "sec-cfg.yaml"; schema = "../../ti/common/schema.yaml"; }; pcfg_yaml_tifs: pm-cfg { config = "pm-cfg.yaml"; schema = "../../ti/common/schema.yaml"; }; rcfg_yaml_tifs: rm-cfg { config = "rm-cfg.yaml"; schema = "../../ti/common/schema.yaml"; }; }; }; combined-dm-cfg { filename = "combined-dm-cfg.bin"; ti-board-config { pcfg_yaml_dm: pm-cfg { config = "pm-cfg.yaml"; schema = "../../ti/common/schema.yaml"; }; rcfg_yaml_dm: rm-cfg { config = "rm-cfg.yaml"; schema = "../../ti/common/schema.yaml"; }; }; }; combined-sysfw-cfg { filename = "combined-sysfw-cfg.bin"; ti-board-config { board-cfg { config = "board-cfg.yaml"; schema = "../../ti/common/schema.yaml"; }; sec-cfg { config = "sec-cfg.yaml"; schema = "../../ti/common/schema.yaml"; }; pm-cfg { config = "pm-cfg.yaml"; schema = "../../ti/common/schema.yaml"; }; rm-cfg { config = "rm-cfg.yaml"; schema = "../../ti/common/schema.yaml"; }; }; }; }; #endif /* CONFIG_ARM64 */ #ifdef CONFIG_TARGET_AQUILA_AM69_R5 &rcfg_yaml_tifs { config = "tifs-rm-cfg.yaml"; schema = "../../ti/common/schema.yaml"; }; &binman { tiboot3-am69-hs-aquila.bin { filename = "tiboot3-am69-hs-aquila.bin"; ti-secure-rom { content = <&u_boot_spl>, <&ti_fs_enc>, <&combined_tifs_cfg>, <&combined_dm_cfg>, <&sysfw_inner_cert>; combined; dm-data; core-opts = <2>; sysfw-inner-cert; keyfile = "custMpk.pem"; sw-rev = <1>; content-sbl = <&u_boot_spl>; content-sysfw = <&ti_fs_enc>; content-sysfw-data = <&combined_tifs_cfg>; content-sysfw-inner-cert = <&sysfw_inner_cert>; content-dm-data = <&combined_dm_cfg>; load = <0x41c00000>; load-sysfw = <0x40000>; load-sysfw-data = <0x66800>; load-dm-data = <0x41c80000>; }; u_boot_spl: u-boot-spl { no-expanded; }; ti_fs_enc: ti-fs-enc.bin { filename = "ti-sysfw/ti-fs-firmware-j784s4-hs-enc.bin"; type = "blob-ext"; optional; }; combined_tifs_cfg: combined-tifs-cfg.bin { filename = "combined-tifs-cfg.bin"; type = "blob-ext"; }; sysfw_inner_cert: sysfw-inner-cert { filename = "ti-sysfw/ti-fs-firmware-j784s4-hs-cert.bin"; type = "blob-ext"; optional; }; combined_dm_cfg: combined-dm-cfg.bin { filename = "combined-dm-cfg.bin"; type = "blob-ext"; }; }; }; &binman { tiboot3-am69-hs-fs-aquila.bin { filename = "tiboot3-am69-hs-fs-aquila.bin"; ti-secure-rom { content = <&u_boot_spl_fs>, <&ti_fs_enc_fs>, <&combined_tifs_cfg_fs>, <&combined_dm_cfg_fs>, <&sysfw_inner_cert_fs>; combined; dm-data; core-opts = <2>; sysfw-inner-cert; keyfile = "custMpk.pem"; sw-rev = <1>; content-sbl = <&u_boot_spl_fs>; content-sysfw = <&ti_fs_enc_fs>; content-sysfw-data = <&combined_tifs_cfg_fs>; content-sysfw-inner-cert = <&sysfw_inner_cert_fs>; content-dm-data = <&combined_dm_cfg_fs>; load = <0x41c00000>; load-sysfw = <0x40000>; load-sysfw-data = <0x66800>; load-dm-data = <0x41c80000>; }; u_boot_spl_fs: u-boot-spl { no-expanded; }; ti_fs_enc_fs: ti-fs-enc.bin { filename = "ti-sysfw/ti-fs-firmware-j784s4-hs-fs-enc.bin"; type = "blob-ext"; optional; }; combined_tifs_cfg_fs: combined-tifs-cfg.bin { filename = "combined-tifs-cfg.bin"; type = "blob-ext"; }; sysfw_inner_cert_fs: sysfw-inner-cert { filename = "ti-sysfw/ti-fs-firmware-j784s4-hs-fs-cert.bin"; type = "blob-ext"; optional; }; combined_dm_cfg_fs: combined-dm-cfg.bin { filename = "combined-dm-cfg.bin"; type = "blob-ext"; }; }; }; &binman { tiboot3-am69-gp-aquila.bin { filename = "tiboot3-am69-gp-aquila.bin"; symlink = "tiboot3.bin"; ti-secure-rom { content = <&u_boot_spl_unsigned>, <&ti_fs_gp>, <&combined_tifs_cfg_gp>, <&combined_dm_cfg_gp>; combined; dm-data; core-opts = <2>; content-sbl = <&u_boot_spl_unsigned>; load = <0x41c00000>; content-sysfw = <&ti_fs_gp>; load-sysfw = <0x40000>; content-sysfw-data = <&combined_tifs_cfg_gp>; load-sysfw-data = < 0x66800>; content-dm-data = <&combined_dm_cfg_gp>; load-dm-data = <0x41c80000>; sw-rev = <1>; keyfile = "ti-degenerate-key.pem"; }; u_boot_spl_unsigned: u-boot-spl { no-expanded; }; ti_fs_gp: ti-fs-gp.bin { filename = "ti-sysfw/ti-fs-firmware-j784s4-gp.bin"; type = "blob-ext"; optional; }; combined_tifs_cfg_gp: combined-tifs-cfg-gp.bin { filename = "combined-tifs-cfg.bin"; type = "blob-ext"; }; combined_dm_cfg_gp: combined-dm-cfg-gp.bin { filename = "combined-dm-cfg.bin"; type = "blob-ext"; }; }; }; #endif #ifdef CONFIG_TARGET_AQUILA_AM69_A72 &binman { ti-dm { filename = "ti-dm.bin"; blob-ext { filename = "ti-dm/j784s4/ipc_echo_testb_mcu1_0_release_strip.xer5f"; optional; }; }; ti-spl { filename = "tispl.bin"; pad-byte = <0xff>; fit { description = "Configuration to load ATF and SPL"; #address-cells = <1>; images { atf { description = "ARM Trusted Firmware"; type = "firmware"; arch = "arm64"; compression = "none"; os = "arm-trusted-firmware"; load = ; entry = ; ti-secure { content = <&atf>; keyfile = "custMpk.pem"; }; atf: atf-bl31 { }; }; tee { description = "OPTEE"; type = "tee"; arch = "arm64"; compression = "none"; os = "tee"; load = <0x9e800000>; entry = <0x9e800000>; ti-secure { content = <&tee>; keyfile = "custMpk.pem"; }; tee: tee-os { }; }; dm { description = "DM binary"; type = "firmware"; arch = "arm32"; compression = "none"; os = "DM"; load = <0x89000000>; entry = <0x89000000>; ti-secure { content = <&dm>; keyfile = "custMpk.pem"; }; dm: ti-dm { filename = "ti-dm.bin"; }; }; spl { description = "SPL (64-bit)"; type = "standalone"; os = "U-Boot"; arch = "arm64"; compression = "none"; load = ; entry = ; ti-secure { content = <&u_boot_spl_nodtb>; keyfile = "custMpk.pem"; }; u_boot_spl_nodtb: blob-ext { filename = "spl/u-boot-spl-nodtb.bin"; }; }; fdt-0 { description = "k3-am69-aquila"; type = "flat_dt"; arch = "arm"; compression = "none"; ti-secure { content = <&spl_am69_aquila_dtb>; keyfile = "custMpk.pem"; }; spl_am69_aquila_dtb: blob-ext { filename = "spl/dts/k3-am69-aquila-dev.dtb"; }; }; }; configurations { default = "conf-0"; conf-0 { description = "k3-am69-aquila"; firmware = "atf"; loadables = "tee", "dm", "spl"; fdt = "fdt-0"; }; }; }; }; }; &binman { u-boot { filename = "u-boot.img"; pad-byte = <0xff>; fit { description = "FIT image with multiple configurations"; images { uboot { description = "U-Boot for AM69 Aquila board"; type = "firmware"; os = "u-boot"; arch = "arm"; compression = "none"; load = ; ti-secure { content = <&u_boot_nodtb>; keyfile = "custMpk.pem"; }; u_boot_nodtb: u-boot-nodtb { }; hash { algo = "crc32"; }; }; fdt-0 { description = "k3-am69-aquila"; type = "flat_dt"; arch = "arm"; compression = "none"; ti-secure { content = <&am69_aquila_dtb>; keyfile = "custMpk.pem"; }; am69_aquila_dtb: blob-ext { filename = "arch/arm/dts/k3-am69-aquila-dev.dtb"; }; hash { algo = "crc32"; }; }; }; configurations { default = "conf-0"; conf-0 { description = "k3-am69-aquila"; firmware = "uboot"; loadables = "uboot"; fdt = "fdt-0"; }; }; }; }; }; &binman { ti-spl_unsigned { filename = "tispl.bin_unsigned"; pad-byte = <0xff>; fit { description = "Configuration to load ATF and SPL"; #address-cells = <1>; images { atf { description = "ARM Trusted Firmware"; type = "firmware"; arch = "arm64"; compression = "none"; os = "arm-trusted-firmware"; load = ; entry = ; atf-bl31 { filename = "bl31.bin"; }; }; tee { description = "OPTEE"; type = "tee"; arch = "arm64"; compression = "none"; os = "tee"; load = <0x9e800000>; entry = <0x9e800000>; tee-os { filename = "tee-pager_v2.bin"; }; }; dm { description = "DM binary"; type = "firmware"; arch = "arm32"; compression = "none"; os = "DM"; load = <0x89000000>; entry = <0x89000000>; ti-dm { filename = "ti-dm.bin"; }; }; spl { description = "SPL (64-bit)"; type = "standalone"; os = "U-Boot"; arch = "arm64"; compression = "none"; load = ; entry = ; blob { filename = "spl/u-boot-spl-nodtb.bin"; }; }; fdt-0 { description = "k3-am69-aquila"; type = "flat_dt"; arch = "arm"; compression = "none"; blob { filename = "spl/dts/k3-am69-aquila-dev.dtb"; }; }; }; configurations { default = "conf-0"; conf-0 { description = "k3-am69-aquila"; firmware = "atf"; loadables = "tee", "dm", "spl"; fdt = "fdt-0"; }; }; }; }; }; &binman { u-boot_unsigned { filename = "u-boot.img_unsigned"; pad-byte = <0xff>; fit { description = "FIT image with multiple configurations"; images { uboot { description = "U-Boot for AM69 Aquila board"; type = "firmware"; os = "u-boot"; arch = "arm"; compression = "none"; load = ; blob { filename = "u-boot-nodtb.bin"; }; hash { algo = "crc32"; }; }; fdt-0 { description = "k3-am69-aquila"; type = "flat_dt"; arch = "arm"; compression = "none"; blob { filename = "arch/arm/dts/k3-am69-aquila-dev.dtb"; }; hash { algo = "crc32"; }; }; }; configurations { default = "conf-0"; conf-0 { description = "k3-am69-aquila"; firmware = "uboot"; loadables = "uboot"; fdt = "fdt-0"; }; }; }; }; }; #endif