mirror of
https://github.com/u-boot/u-boot.git
synced 2025-04-18 10:54:37 +00:00

Add support for packaging the TIFS Stub as it's required for basic Low Power Modes like Deep Sleep. The reason it is packaged using binman and not inherently as part of the DM firmware is because for HS devices, customer owns the customer key and only customer has access to it. DM is release by TI, Since TI doesn't have access to the customer key it cannot have a component that is signed by customer key. Hence, it's left as part of binman to be signed and packaged. While at it, also make sure it's documented in phycore-am62x Reviewed-by: Nishanth Menon <nm@ti.com> Reviewed-by: Wadim Egorov <w.egorov@phytec.de> Signed-off-by: Dhruva Gole <d-gole@ti.com>
411 lines
8.8 KiB
Text
411 lines
8.8 KiB
Text
// SPDX-License-Identifier: GPL-2.0
|
|
/*
|
|
* Based on k3-am625-sk-binman.dtsi
|
|
*
|
|
* Copyright (C) 2022 - 2023 PHYTEC Messtechnik GmbH
|
|
* Author: Wadim Egorov <w.egorov@phytec.de>
|
|
*/
|
|
|
|
#include "k3-binman.dtsi"
|
|
|
|
#ifdef CONFIG_TARGET_PHYCORE_AM62X_R5
|
|
&binman {
|
|
tiboot3-am62x-hs-phycore-som.bin {
|
|
filename = "tiboot3-am62x-hs-phycore-som.bin";
|
|
ti-secure-rom {
|
|
content = <&u_boot_spl>, <&ti_fs_enc>, <&combined_tifs_cfg>,
|
|
<&combined_dm_cfg>, <&sysfw_inner_cert>;
|
|
combined;
|
|
dm-data;
|
|
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 = <0x43c00000>;
|
|
load-sysfw = <0x40000>;
|
|
load-sysfw-data = <0x67000>;
|
|
load-dm-data = <0x43c3a800>;
|
|
};
|
|
u_boot_spl: u-boot-spl {
|
|
no-expanded;
|
|
};
|
|
ti_fs_enc: ti-fs-enc.bin {
|
|
filename = "ti-sysfw/ti-fs-firmware-am62x-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-am62x-hs-cert.bin";
|
|
type = "blob-ext";
|
|
optional;
|
|
};
|
|
combined_dm_cfg: combined-dm-cfg.bin {
|
|
filename = "combined-dm-cfg.bin";
|
|
type = "blob-ext";
|
|
};
|
|
};
|
|
};
|
|
|
|
&binman {
|
|
tiboot3-am62x-hs-fs-phycore-som.bin {
|
|
filename = "tiboot3-am62x-hs-fs-phycore-som.bin";
|
|
symlink = "tiboot3.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;
|
|
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 = <0x43c00000>;
|
|
load-sysfw = <0x40000>;
|
|
load-sysfw-data = <0x67000>;
|
|
load-dm-data = <0x43c3a800>;
|
|
};
|
|
u_boot_spl_fs: u-boot-spl {
|
|
no-expanded;
|
|
};
|
|
ti_fs_enc_fs: ti-fs-enc.bin {
|
|
filename = "ti-sysfw/ti-fs-firmware-am62x-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-am62x-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-am62x-gp-phycore-som.bin {
|
|
filename = "tiboot3-am62x-gp-phycore-som.bin";
|
|
ti-secure-rom {
|
|
content = <&u_boot_spl_unsigned>, <&ti_fs_gp>,
|
|
<&combined_tifs_cfg_gp>, <&combined_dm_cfg_gp>;
|
|
combined;
|
|
dm-data;
|
|
content-sbl = <&u_boot_spl_unsigned>;
|
|
load = <0x43c00000>;
|
|
content-sysfw = <&ti_fs_gp>;
|
|
load-sysfw = <0x40000>;
|
|
content-sysfw-data = <&combined_tifs_cfg_gp>;
|
|
load-sysfw-data = <0x67000>;
|
|
content-dm-data = <&combined_dm_cfg_gp>;
|
|
load-dm-data = <0x43c3a800>;
|
|
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-am62x-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 /* CONFIG_TARGET_PHYCORE_AM62X_R5 */
|
|
|
|
#ifdef CONFIG_TARGET_PHYCORE_AM62X_A53
|
|
#define SPL_AM625_PHYBOARD_LYRA_DTB "spl/dts/ti/k3-am625-phyboard-lyra-rdk.dtb"
|
|
#define AM625_PHYBOARD_LYRA_DTB "u-boot.dtb"
|
|
|
|
&binman {
|
|
ti-dm {
|
|
filename = "ti-dm.bin";
|
|
blob-ext {
|
|
filename = "ti-dm/am62xx/ipc_echo_testb_mcu1_0_release_strip.xer5f";
|
|
};
|
|
};
|
|
|
|
tifsstub-hs {
|
|
filename = "tifsstub.bin_hs";
|
|
ti-secure-rom {
|
|
content = <&tifsstub_hs_cert>;
|
|
core = "secure";
|
|
load = <0x40000>;
|
|
sw-rev = <CONFIG_K3_X509_SWRV>;
|
|
keyfile = "custMpk.pem";
|
|
countersign;
|
|
tifsstub;
|
|
};
|
|
tifsstub_hs_cert: tifsstub-hs-cert.bin {
|
|
filename = "ti-sysfw/ti-fs-stub-firmware-am62x-hs-cert.bin";
|
|
type = "blob-ext";
|
|
optional;
|
|
};
|
|
tifsstub_hs_enc: tifsstub-hs-enc.bin {
|
|
filename = "ti-sysfw/ti-fs-stub-firmware-am62x-hs-enc.bin";
|
|
type = "blob-ext";
|
|
optional;
|
|
};
|
|
};
|
|
|
|
tifsstub-fs {
|
|
filename = "tifsstub.bin_fs";
|
|
tifsstub_fs_cert: tifsstub-fs-cert.bin {
|
|
filename = "ti-sysfw/ti-fs-stub-firmware-am62x-hs-cert.bin";
|
|
type = "blob-ext";
|
|
optional;
|
|
};
|
|
tifsstub_fs_enc: tifsstub-fs-enc.bin {
|
|
filename = "ti-sysfw/ti-fs-stub-firmware-am62x-hs-enc.bin";
|
|
type = "blob-ext";
|
|
optional;
|
|
};
|
|
|
|
};
|
|
|
|
tifsstub-gp {
|
|
filename = "tifsstub.bin_gp";
|
|
ti-secure-rom {
|
|
content = <&tifsstub_gp>;
|
|
core = "secure";
|
|
load = <0x60000>;
|
|
sw-rev = <CONFIG_K3_X509_SWRV>;
|
|
keyfile = "ti-degenerate-key.pem";
|
|
tifsstub;
|
|
};
|
|
tifsstub_gp: tifsstub-gp.bin {
|
|
filename = "ti-sysfw/ti-fs-stub-firmware-am62x-gp.bin";
|
|
type = "blob-ext";
|
|
optional;
|
|
};
|
|
};
|
|
|
|
|
|
ti-spl {
|
|
insert-template = <&ti_spl_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>;
|
|
keyfile = "custMpk.pem";
|
|
};
|
|
dm: blob-ext {
|
|
filename = "ti-dm.bin";
|
|
};
|
|
};
|
|
|
|
fdt-0 {
|
|
description = "k3-am625-phyboard-lyra-rdk";
|
|
type = "flat_dt";
|
|
arch = "arm";
|
|
compression = "none";
|
|
ti-secure {
|
|
content = <&spl_am625_phyboard_lyra_dtb>;
|
|
keyfile = "custMpk.pem";
|
|
};
|
|
spl_am625_phyboard_lyra_dtb: blob-ext {
|
|
filename = SPL_AM625_PHYBOARD_LYRA_DTB;
|
|
};
|
|
};
|
|
};
|
|
|
|
configurations {
|
|
default = "conf-0";
|
|
|
|
conf-0 {
|
|
description = "k3-am625-phyboard-lyra-rdk";
|
|
firmware = "atf";
|
|
loadables = "tee", "tifsstub-hs", "tifsstub-fs",
|
|
"tifsstub-gp", "dm", "spl";
|
|
fdt = "fdt-0";
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
|
|
&binman {
|
|
u-boot {
|
|
insert-template = <&u_boot_template>;
|
|
|
|
fit {
|
|
images {
|
|
uboot {
|
|
description = "U-Boot for phyCORE-AM62x";
|
|
};
|
|
|
|
fdt-0 {
|
|
description = "k3-am625-phyboard-lyra-rdk";
|
|
type = "flat_dt";
|
|
arch = "arm";
|
|
compression = "none";
|
|
ti-secure {
|
|
content = <&am625_phyboard_lyra_dtb>;
|
|
keyfile = "custMpk.pem";
|
|
};
|
|
am625_phyboard_lyra_dtb: blob-ext {
|
|
filename = AM625_PHYBOARD_LYRA_DTB;
|
|
};
|
|
hash {
|
|
algo = "crc32";
|
|
};
|
|
};
|
|
};
|
|
|
|
configurations {
|
|
default = "conf-0";
|
|
|
|
conf-0 {
|
|
description = "k3-am625-phyboard-lyra-rdk";
|
|
firmware = "uboot";
|
|
loadables = "uboot";
|
|
fdt = "fdt-0";
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
|
|
&binman {
|
|
ti-spl_unsigned {
|
|
insert-template = <&ti_spl_unsigned_template>;
|
|
|
|
fit {
|
|
images {
|
|
dm {
|
|
blob-ext {
|
|
filename = "ti-dm.bin";
|
|
};
|
|
};
|
|
|
|
fdt-0 {
|
|
description = "k3-am625-phyboard-lyra-rdk";
|
|
type = "flat_dt";
|
|
arch = "arm";
|
|
compression = "none";
|
|
spl_am625_phyboard_lyra_dtb_unsigned: blob {
|
|
filename = SPL_AM625_PHYBOARD_LYRA_DTB;
|
|
};
|
|
};
|
|
};
|
|
|
|
configurations {
|
|
default = "conf-0";
|
|
|
|
conf-0 {
|
|
description = "k3-am625-phyboard-lyra-rdk";
|
|
firmware = "atf";
|
|
loadables = "tee", "tifsstub-hs", "tifsstub-fs",
|
|
"tifsstub-gp", "dm", "spl";
|
|
fdt = "fdt-0";
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
|
|
&binman {
|
|
u-boot_unsigned {
|
|
insert-template = <&u_boot_unsigned_template>;
|
|
|
|
fit {
|
|
images {
|
|
uboot {
|
|
description = "U-Boot for phyCORE-AM62x";
|
|
};
|
|
|
|
fdt-0 {
|
|
description = "k3-am625-phyboard-lyra-rdk";
|
|
type = "flat_dt";
|
|
arch = "arm";
|
|
compression = "none";
|
|
am625_phyboard_lyra_dtb_unsigned: blob {
|
|
filename = AM625_PHYBOARD_LYRA_DTB;
|
|
};
|
|
hash {
|
|
algo = "crc32";
|
|
};
|
|
};
|
|
};
|
|
|
|
configurations {
|
|
default = "conf-0";
|
|
|
|
conf-0 {
|
|
description = "k3-am625-phyboard-lyra-rdk";
|
|
firmware = "uboot";
|
|
loadables = "uboot";
|
|
fdt = "fdt-0";
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
#endif /* CONFIG_TARGET_PHYCORE_AM62X_A53 */
|