arm: dts: phycore-am62x: Package TIFS Stub
authorDhruva Gole <d-gole@ti.com>
Mon, 5 Aug 2024 14:29:37 +0000 (19:59 +0530)
committerTom Rini <trini@konsulko.com>
Fri, 9 Aug 2024 00:37:09 +0000 (18:37 -0600)
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>
arch/arm/dts/k3-am625-phycore-som-binman.dtsi
doc/board/phytec/phycore-am62x.rst

index dbee4aa..0961ca6 100644 (file)
                        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>;
                                conf-0 {
                                        description = "k3-am625-phyboard-lyra-rdk";
                                        firmware = "atf";
-                                       loadables = "tee", "dm", "spl";
+                                       loadables = "tee", "tifsstub-hs", "tifsstub-fs",
+                                                   "tifsstub-gp", "dm", "spl";
                                        fdt = "fdt-0";
                                };
                        };
                                conf-0 {
                                        description = "k3-am625-phyboard-lyra-rdk";
                                        firmware = "atf";
-                                       loadables = "tee", "dm", "spl";
+                                       loadables = "tee", "tifsstub-hs", "tifsstub-fs",
+                                                   "tifsstub-gp", "dm", "spl";
                                        fdt = "fdt-0";
                                };
                        };
index af24acf..56c1fd8 100644 (file)
@@ -32,7 +32,7 @@ Sources
 
 .. include::  ../ti/k3.rst
     :start-after: .. k3_rst_include_start_boot_firmwares
-    :end-before: .. k3_rst_include_end_boot_firmwares
+    :end-before: .. k3_rst_include_end_tifsstub
 
 Build procedure
 ---------------