In case CONFIG_IMX_HAB is enabled, extend the binman image description for
all of i.MX8M{Q,M,N,P} with CST wrapper node. This way, if CONFIG_IMX_HAB
is enabled, binman will be automatically used to sign SPL and fitImage.

Reviewed-by: Tim Harvey <thar...@gateworks.com>
Signed-off-by: Marek Vasut <ma...@denx.de>
---
Cc: "NXP i.MX U-Boot Team" <uboot-...@nxp.com>
Cc: Adam Ford <aford...@gmail.com>
Cc: Alper Nebi Yasak <alpernebiya...@gmail.com>
Cc: Andrejs Cainikovs <andrejs.cainik...@toradex.com>
Cc: Angus Ainslie <an...@akkea.ca>
Cc: Emanuele Ghidoli <emanuele.ghid...@toradex.com>
Cc: Fabio Estevam <feste...@gmail.com>
Cc: Francesco Dolcini <francesco.dolc...@toradex.com>
Cc: Marcel Ziswiler <marcel.ziswi...@toradex.com>
Cc: Rasmus Villemoes <rasmus.villem...@prevas.dk>
Cc: Simon Glass <s...@chromium.org>
Cc: Stefan Eichenberger <stefan.eichenber...@toradex.com>
Cc: Stefano Babic <sba...@denx.de>
Cc: Tim Harvey <thar...@gateworks.com>
Cc: Tom Rini <tr...@konsulko.com>
Cc: ker...@puri.sm
Cc: u-b...@dh-electronics.com
Cc: u-boot@lists.denx.de
---
V2: New patch
V3: No change
V4: Add RB from Tim
---
 arch/arm/dts/imx8mm-u-boot.dtsi | 195 ++++++++++++++++-------------
 arch/arm/dts/imx8mn-u-boot.dtsi | 209 ++++++++++++++++++--------------
 arch/arm/dts/imx8mp-u-boot.dtsi | 172 ++++++++++++++------------
 arch/arm/dts/imx8mq-u-boot.dtsi | 182 ++++++++++++++-------------
 4 files changed, 424 insertions(+), 334 deletions(-)

diff --git a/arch/arm/dts/imx8mm-u-boot.dtsi b/arch/arm/dts/imx8mm-u-boot.dtsi
index b9b1193823a..c02e11def5f 100644
--- a/arch/arm/dts/imx8mm-u-boot.dtsi
+++ b/arch/arm/dts/imx8mm-u-boot.dtsi
@@ -54,126 +54,151 @@
                };
 #endif
 
-               binman_imx_spl: nxp-imx8mimage {
-                       filename = "u-boot-spl-mkimage.bin";
-                       nxp,boot-from = "sd";
-                       nxp,rom-version = <1>;
+#ifdef CONFIG_IMX_HAB
+               nxp-imx8mcst@0 {
+                       filename = "u-boot-spl-mkimage.signed.bin";
                        nxp,loader-address = <CONFIG_SPL_TEXT_BASE>;
+                       nxp,unlock;
                        args;   /* Needed by mkimage etype superclass */
+#endif
 
-                       section {
-                               align = <4>;
-                               align-size = <4>;
-                               filename = "u-boot-spl-ddr.bin";
-                               pad-byte = <0xff>;
-
-                               u-boot-spl {
-                                       align-end = <4>;
-                                       filename = "u-boot-spl.bin";
-                               };
+                       binman_imx_spl: nxp-imx8mimage {
+                               filename = "u-boot-spl-mkimage.bin";
+                               nxp,boot-from = "sd";
+                               nxp,rom-version = <1>;
+                               nxp,loader-address = <CONFIG_SPL_TEXT_BASE>;
+                               args;   /* Needed by mkimage etype superclass */
+
+                               section {
+                                       align = <4>;
+                                       align-size = <4>;
+                                       filename = "u-boot-spl-ddr.bin";
+                                       pad-byte = <0xff>;
+
+                                       u-boot-spl {
+                                               align-end = <4>;
+                                               filename = "u-boot-spl.bin";
+                                       };
 
-                               ddr-1d-imem-fw {
-                                       filename = 
"lpddr4_pmu_train_1d_imem.bin";
-                                       align-end = <4>;
-                                       type = "blob-ext";
-                               };
+                                       ddr-1d-imem-fw {
+                                               filename = 
"lpddr4_pmu_train_1d_imem.bin";
+                                               align-end = <4>;
+                                               type = "blob-ext";
+                                       };
 
-                               ddr-1d-dmem-fw {
-                                       filename = 
"lpddr4_pmu_train_1d_dmem.bin";
-                                       align-end = <4>;
-                                       type = "blob-ext";
-                               };
+                                       ddr-1d-dmem-fw {
+                                               filename = 
"lpddr4_pmu_train_1d_dmem.bin";
+                                               align-end = <4>;
+                                               type = "blob-ext";
+                                       };
 
-                               ddr-2d-imem-fw {
-                                       filename = 
"lpddr4_pmu_train_2d_imem.bin";
-                                       align-end = <4>;
-                                       type = "blob-ext";
-                               };
+                                       ddr-2d-imem-fw {
+                                               filename = 
"lpddr4_pmu_train_2d_imem.bin";
+                                               align-end = <4>;
+                                               type = "blob-ext";
+                                       };
 
-                               ddr-2d-dmem-fw {
-                                       filename = 
"lpddr4_pmu_train_2d_dmem.bin";
-                                       align-end = <4>;
-                                       type = "blob-ext";
+                                       ddr-2d-dmem-fw {
+                                               filename = 
"lpddr4_pmu_train_2d_dmem.bin";
+                                               align-end = <4>;
+                                               type = "blob-ext";
+                                       };
                                };
                        };
+#ifdef CONFIG_IMX_HAB
                };
 
-               binman_imx_fit: fit {
-                       description = "Configuration to load ATF before U-Boot";
-#ifndef CONFIG_IMX_HAB
-                       fit,external-offset = <CONFIG_FIT_EXTERNAL_OFFSET>;
-#endif
-                       fit,fdt-list = "of-list";
-                       #address-cells = <1>;
+               nxp-imx8mcst@1 {
+                       filename = "u-boot-fit.signed.bin";
+                       nxp,loader-address = <CONFIG_SPL_LOAD_FIT_ADDRESS>;
 #ifdef CONFIG_FSPI_CONF_HEADER
                        offset = <0x58C00>;
 #else
                        offset = <0x57c00>;
 #endif
 
-                       images {
-                               uboot {
-                                       arch = "arm64";
-                                       compression = "none";
-                                       description = "U-Boot (64-bit)";
-                                       load = <CONFIG_TEXT_BASE>;
-                                       type = "standalone";
+                       args;   /* Needed by mkimage etype superclass */
+#endif
 
-                                       uboot-blob {
-                                               filename = "u-boot-nodtb.bin";
-                                               type = "blob-ext";
+                       binman_imx_fit: fit {
+                               description = "Configuration to load ATF before 
U-Boot";
+#ifndef CONFIG_IMX_HAB
+                               fit,external-offset = 
<CONFIG_FIT_EXTERNAL_OFFSET>;
+#endif
+                               fit,fdt-list = "of-list";
+                               #address-cells = <1>;
+#ifdef CONFIG_FSPI_CONF_HEADER
+                               offset = <0x58C00>;
+#else
+                               offset = <0x57c00>;
+#endif
+
+                               images {
+                                       uboot {
+                                               arch = "arm64";
+                                               compression = "none";
+                                               description = "U-Boot (64-bit)";
+                                               load = <CONFIG_TEXT_BASE>;
+                                               type = "standalone";
+
+                                               uboot-blob {
+                                                       filename = 
"u-boot-nodtb.bin";
+                                                       type = "blob-ext";
+                                               };
                                        };
-                               };
 
 #ifndef CONFIG_ARMV8_PSCI
-                               atf {
-                                       arch = "arm64";
-                                       compression = "none";
-                                       description = "ARM Trusted Firmware";
-                                       entry = <0x920000>;
-                                       load = <0x920000>;
-                                       type = "firmware";
-
-                                       atf-blob {
-                                               filename = "bl31.bin";
-                                               type = "atf-bl31";
+                                       atf {
+                                               arch = "arm64";
+                                               compression = "none";
+                                               description = "ARM Trusted 
Firmware";
+                                               entry = <0x920000>;
+                                               load = <0x920000>;
+                                               type = "firmware";
+
+                                               atf-blob {
+                                                       filename = "bl31.bin";
+                                                       type = "atf-bl31";
+                                               };
                                        };
-                               };
 #endif
 
-                               binman_fip: fip {
-                                       arch = "arm64";
-                                       compression = "none";
-                                       description = "Trusted Firmware FIP";
-                                       load = <0x40310000>;
-                                       type = "firmware";
-                               };
+                                       binman_fip: fip {
+                                               arch = "arm64";
+                                               compression = "none";
+                                               description = "Trusted Firmware 
FIP";
+                                               load = <0x40310000>;
+                                               type = "firmware";
+                                       };
 
-                               @fdt-SEQ {
-                                       compression = "none";
-                                       description = "NAME";
-                                       type = "flat_dt";
+                                       @fdt-SEQ {
+                                               compression = "none";
+                                               description = "NAME";
+                                               type = "flat_dt";
 
-                                       uboot-fdt-blob {
-                                               filename = "u-boot.dtb";
-                                               type = "blob-ext";
+                                               uboot-fdt-blob {
+                                                       filename = "u-boot.dtb";
+                                                       type = "blob-ext";
+                                               };
                                        };
                                };
-                       };
 
-                       configurations {
-                               default = "@config-DEFAULT-SEQ";
+                               configurations {
+                                       default = "@config-DEFAULT-SEQ";
 
-                               @config-SEQ {
-                                       description = "NAME";
-                                       fdt = "fdt-SEQ";
-                                       firmware = "uboot";
+                                       @config-SEQ {
+                                               description = "NAME";
+                                               fdt = "fdt-SEQ";
+                                               firmware = "uboot";
 #ifndef CONFIG_ARMV8_PSCI
-                                       loadables = "atf";
+                                               loadables = "atf";
 #endif
+                                       };
                                };
                        };
+#ifdef CONFIG_IMX_HAB
                };
+#endif
        };
 };
 
diff --git a/arch/arm/dts/imx8mn-u-boot.dtsi b/arch/arm/dts/imx8mn-u-boot.dtsi
index c9fb33cfb73..732191f5205 100644
--- a/arch/arm/dts/imx8mn-u-boot.dtsi
+++ b/arch/arm/dts/imx8mn-u-boot.dtsi
@@ -103,147 +103,172 @@
                };
 #endif
 
-               binman_imx_spl: nxp-imx8mimage {
-                       filename = "u-boot-spl-mkimage.bin";
-                       nxp,boot-from = "sd";
-                       nxp,rom-version = <2>;
+#ifdef CONFIG_IMX_HAB
+               nxp-imx8mcst@0 {
+                       filename = "u-boot-spl-mkimage.signed.bin";
                        nxp,loader-address = <CONFIG_SPL_TEXT_BASE>;
+                       nxp,unlock;
                        args;   /* Needed by mkimage etype superclass */
+#endif
 
-                       section {
-                               filename = "u-boot-spl-ddr.bin";
-                               pad-byte = <0xff>;
-                               align-size = <4>;
-                               align = <4>;
-
-                               u-boot-spl {
-                                       align-end = <4>;
-                                       filename = "u-boot-spl.bin";
-                               };
+                       binman_imx_spl: nxp-imx8mimage {
+                               filename = "u-boot-spl-mkimage.bin";
+                               nxp,boot-from = "sd";
+                               nxp,rom-version = <2>;
+                               nxp,loader-address = <CONFIG_SPL_TEXT_BASE>;
+                               args;   /* Needed by mkimage etype superclass */
+
+                               section {
+                                       filename = "u-boot-spl-ddr.bin";
+                                       pad-byte = <0xff>;
+                                       align-size = <4>;
+                                       align = <4>;
+
+                                       u-boot-spl {
+                                               align-end = <4>;
+                                               filename = "u-boot-spl.bin";
+                                       };
 
-                               ddr-1d-imem-fw {
+                                       ddr-1d-imem-fw {
 #ifdef CONFIG_IMX8M_LPDDR4
-                                       filename = 
"lpddr4_pmu_train_1d_imem.bin";
+                                               filename = 
"lpddr4_pmu_train_1d_imem.bin";
 #elif CONFIG_IMX8M_DDR4
-                                       filename = "ddr4_imem_1d_201810.bin";
+                                               filename = 
"ddr4_imem_1d_201810.bin";
 #else
-                                       filename = "ddr3_imem_1d.bin";
+                                               filename = "ddr3_imem_1d.bin";
 #endif
-                                       type = "blob-ext";
-                                       align-end = <4>;
-                               };
+                                               type = "blob-ext";
+                                               align-end = <4>;
+                                       };
 
-                               ddr-1d-dmem-fw {
+                                       ddr-1d-dmem-fw {
 #ifdef CONFIG_IMX8M_LPDDR4
-                                       filename = 
"lpddr4_pmu_train_1d_dmem.bin";
+                                               filename = 
"lpddr4_pmu_train_1d_dmem.bin";
 #elif CONFIG_IMX8M_DDR4
-                                       filename = "ddr4_dmem_1d_201810.bin";
+                                               filename = 
"ddr4_dmem_1d_201810.bin";
 #else
-                                       filename = "ddr3_dmem_1d.bin";
+                                               filename = "ddr3_dmem_1d.bin";
 #endif
-                                       type = "blob-ext";
-                                       align-end = <4>;
-                               };
+                                               type = "blob-ext";
+                                               align-end = <4>;
+                                       };
 
 #if defined(CONFIG_IMX8M_LPDDR4) || defined(CONFIG_IMX8M_DDR4)
-                               ddr-2d-imem-fw {
+                                       ddr-2d-imem-fw {
 #ifdef CONFIG_IMX8M_LPDDR4
-                                       filename = 
"lpddr4_pmu_train_2d_imem.bin";
+                                               filename = 
"lpddr4_pmu_train_2d_imem.bin";
 #else
-                                       filename = "ddr4_imem_2d_201810.bin";
+                                               filename = 
"ddr4_imem_2d_201810.bin";
 #endif
-                                       type = "blob-ext";
-                                       align-end = <4>;
-                               };
+                                               type = "blob-ext";
+                                               align-end = <4>;
+                                       };
 
-                               ddr-2d-dmem-fw {
+                                       ddr-2d-dmem-fw {
 #ifdef CONFIG_IMX8M_LPDDR4
-                                       filename = 
"lpddr4_pmu_train_2d_dmem.bin";
+                                               filename = 
"lpddr4_pmu_train_2d_dmem.bin";
 #else
-                                       filename = "ddr4_dmem_2d_201810.bin";
+                                               filename = 
"ddr4_dmem_2d_201810.bin";
 #endif
-                                       type = "blob-ext";
-                                       align-end = <4>;
-                               };
+                                               type = "blob-ext";
+                                               align-end = <4>;
+                                       };
 #endif
+                               };
                        };
+
+#ifdef CONFIG_IMX_HAB
                };
 
-               binman_imx_fit: fit {
-                       description = "Configuration to load ATF before U-Boot";
-#ifndef CONFIG_IMX_HAB
-                       fit,external-offset = <CONFIG_FIT_EXTERNAL_OFFSET>;
-#endif
-                       fit,fdt-list = "of-list";
-                       #address-cells = <1>;
+               nxp-imx8mcst@1 {
+                       filename = "u-boot-fit.signed.bin";
+                       nxp,loader-address = <CONFIG_SPL_LOAD_FIT_ADDRESS>;
 #ifdef CONFIG_FSPI_CONF_HEADER
                        offset = <0x59000>;
 #else
                        offset = <0x58000>;
 #endif
+                       args;   /* Needed by mkimage etype superclass */
+#endif
 
-                       images {
-                               uboot {
-                                       arch = "arm64";
-                                       compression = "none";
-                                       description = "U-Boot (64-bit)";
-                                       load = <CONFIG_TEXT_BASE>;
-                                       type = "standalone";
+                       binman_imx_fit: fit {
+                               description = "Configuration to load ATF before 
U-Boot";
+#ifndef CONFIG_IMX_HAB
+                               fit,external-offset = 
<CONFIG_FIT_EXTERNAL_OFFSET>;
+#endif
+                               fit,fdt-list = "of-list";
+                               #address-cells = <1>;
+#ifdef CONFIG_FSPI_CONF_HEADER
+                               offset = <0x59000>;
+#else
+                               offset = <0x58000>;
+#endif
 
-                                       uboot-blob {
-                                               filename = "u-boot-nodtb.bin";
-                                               type = "blob-ext";
+                               images {
+                                       uboot {
+                                               arch = "arm64";
+                                               compression = "none";
+                                               description = "U-Boot (64-bit)";
+                                               load = <CONFIG_TEXT_BASE>;
+                                               type = "standalone";
+
+                                               uboot-blob {
+                                                       filename = 
"u-boot-nodtb.bin";
+                                                       type = "blob-ext";
+                                               };
                                        };
-                               };
 
 #ifndef CONFIG_ARMV8_PSCI
-                               atf {
-                                       arch = "arm64";
-                                       compression = "none";
-                                       description = "ARM Trusted Firmware";
-                                       entry = <0x960000>;
-                                       load = <0x960000>;
-                                       type = "firmware";
-
-                                       atf-blob {
-                                               filename = "bl31.bin";
-                                               type = "atf-bl31";
+                                       atf {
+                                               arch = "arm64";
+                                               compression = "none";
+                                               description = "ARM Trusted 
Firmware";
+                                               entry = <0x960000>;
+                                               load = <0x960000>;
+                                               type = "firmware";
+
+                                               atf-blob {
+                                                       filename = "bl31.bin";
+                                                       type = "atf-bl31";
+                                               };
                                        };
-                               };
 #endif
 
-                               binman_fip: fip {
-                                       arch = "arm64";
-                                       compression = "none";
-                                       description = "Trusted Firmware FIP";
-                                       load = <0x40310000>;
-                                       type = "firmware";
-                               };
+                                       binman_fip: fip {
+                                               arch = "arm64";
+                                               compression = "none";
+                                               description = "Trusted Firmware 
FIP";
+                                               load = <0x40310000>;
+                                               type = "firmware";
+                                       };
 
-                               @fdt-SEQ {
-                                       compression = "none";
-                                       description = "NAME";
-                                       type = "flat_dt";
+                                       @fdt-SEQ {
+                                               compression = "none";
+                                               description = "NAME";
+                                               type = "flat_dt";
 
-                                       uboot-fdt-blob {
-                                               filename = "u-boot.dtb";
-                                               type = "blob-ext";
+                                               uboot-fdt-blob {
+                                                       filename = "u-boot.dtb";
+                                                       type = "blob-ext";
+                                               };
                                        };
                                };
-                       };
 
-                       configurations {
-                               default = "@config-DEFAULT-SEQ";
+                               configurations {
+                                       default = "@config-DEFAULT-SEQ";
 
-                               @config-SEQ {
-                                       description = "NAME";
-                                       fdt = "fdt-SEQ";
-                                       firmware = "uboot";
+                                       @config-SEQ {
+                                               description = "NAME";
+                                               fdt = "fdt-SEQ";
+                                               firmware = "uboot";
 #ifndef CONFIG_ARMV8_PSCI
-                                       loadables = "atf";
+                                               loadables = "atf";
 #endif
+                                       };
                                };
                        };
+#ifdef CONFIG_IMX_HAB
                };
+#endif
        };
 };
diff --git a/arch/arm/dts/imx8mp-u-boot.dtsi b/arch/arm/dts/imx8mp-u-boot.dtsi
index 8b5ac3faf1c..f2655a4d0c8 100644
--- a/arch/arm/dts/imx8mp-u-boot.dtsi
+++ b/arch/arm/dts/imx8mp-u-boot.dtsi
@@ -86,110 +86,130 @@
        section {
                pad-byte = <0x00>;
 
-               binman_imx_spl: nxp-imx8mimage {
-                       filename = "u-boot-spl-mkimage.bin";
-                       nxp,boot-from = "sd";
-                       nxp,rom-version = <2>;
+#ifdef CONFIG_IMX_HAB
+               nxp-imx8mcst@0 {
+                       filename = "u-boot-spl-mkimage.signed.bin";
                        nxp,loader-address = <CONFIG_SPL_TEXT_BASE>;
+                       nxp,unlock;
                        args;   /* Needed by mkimage etype superclass */
+#endif
 
-                       section {
-                               filename = "u-boot-spl-ddr.bin";
-                               pad-byte = <0xff>;
-                               align-size = <4>;
-                               align = <4>;
-
-                               u-boot-spl {
-                                       align-end = <4>;
-                               };
+                       binman_imx_spl: nxp-imx8mimage {
+                               filename = "u-boot-spl-mkimage.bin";
+                               nxp,boot-from = "sd";
+                               nxp,rom-version = <2>;
+                               nxp,loader-address = <CONFIG_SPL_TEXT_BASE>;
+                               args;   /* Needed by mkimage etype superclass */
+
+                               section {
+                                       filename = "u-boot-spl-ddr.bin";
+                                       pad-byte = <0xff>;
+                                       align-size = <4>;
+                                       align = <4>;
+
+                                       u-boot-spl {
+                                               align-end = <4>;
+                                       };
 
-                               ddr-1d-imem-fw {
-                                       filename = 
"lpddr4_pmu_train_1d_imem_202006.bin";
-                                       type = "blob-ext";
-                                       align-end = <4>;
-                               };
+                                       ddr-1d-imem-fw {
+                                               filename = 
"lpddr4_pmu_train_1d_imem_202006.bin";
+                                               type = "blob-ext";
+                                               align-end = <4>;
+                                       };
 
-                               ddr-1d-dmem-fw {
-                                       filename = 
"lpddr4_pmu_train_1d_dmem_202006.bin";
-                                       type = "blob-ext";
-                                       align-end = <4>;
-                               };
+                                       ddr-1d-dmem-fw {
+                                               filename = 
"lpddr4_pmu_train_1d_dmem_202006.bin";
+                                               type = "blob-ext";
+                                               align-end = <4>;
+                                       };
 
-                               ddr-2d-imem-fw {
-                                       filename = 
"lpddr4_pmu_train_2d_imem_202006.bin";
-                                       type = "blob-ext";
-                                       align-end = <4>;
-                               };
+                                       ddr-2d-imem-fw {
+                                               filename = 
"lpddr4_pmu_train_2d_imem_202006.bin";
+                                               type = "blob-ext";
+                                               align-end = <4>;
+                                       };
 
-                               ddr-2d-dmem-fw {
-                                       filename = 
"lpddr4_pmu_train_2d_dmem_202006.bin";
-                                       type = "blob-ext";
-                                       align-end = <4>;
+                                       ddr-2d-dmem-fw {
+                                               filename = 
"lpddr4_pmu_train_2d_dmem_202006.bin";
+                                               type = "blob-ext";
+                                               align-end = <4>;
+                                       };
                                };
                        };
+#ifdef CONFIG_IMX_HAB
                };
 
-               binman_imx_fit: fit {
-                       description = "Configuration to load ATF before U-Boot";
-#ifndef CONFIG_IMX_HAB
-                       fit,external-offset = <CONFIG_FIT_EXTERNAL_OFFSET>;
-#endif
-                       fit,fdt-list = "of-list";
-                       #address-cells = <1>;
+               nxp-imx8mcst@1 {
+                       filename = "u-boot-fit.signed.bin";
+                       nxp,loader-address = <CONFIG_SPL_LOAD_FIT_ADDRESS>;
                        offset = <0x58000>;
+                       args;   /* Needed by mkimage etype superclass */
+#endif
 
-                       images {
-                               uboot {
-                                       description = "U-Boot (64-bit)";
-                                       type = "standalone";
-                                       arch = "arm64";
-                                       compression = "none";
-                                       load = <CONFIG_TEXT_BASE>;
-
-                                       uboot_blob: blob-ext {
-                                               filename = "u-boot-nodtb.bin";
+                       binman_imx_fit: fit {
+                               description = "Configuration to load ATF before 
U-Boot";
+#ifndef CONFIG_IMX_HAB
+                               fit,external-offset = 
<CONFIG_FIT_EXTERNAL_OFFSET>;
+#endif
+                               fit,fdt-list = "of-list";
+                               #address-cells = <1>;
+                               offset = <0x58000>;
+
+                               images {
+                                       uboot {
+                                               description = "U-Boot (64-bit)";
+                                               type = "standalone";
+                                               arch = "arm64";
+                                               compression = "none";
+                                               load = <CONFIG_TEXT_BASE>;
+
+                                               uboot_blob: blob-ext {
+                                                       filename = 
"u-boot-nodtb.bin";
+                                               };
                                        };
-                               };
 
 #ifndef CONFIG_ARMV8_PSCI
-                               atf {
-                                       description = "ARM Trusted Firmware";
-                                       type = "firmware";
-                                       arch = "arm64";
-                                       compression = "none";
-                                       load = <0x970000>;
-                                       entry = <0x970000>;
-
-                                       atf_blob: atf-blob {
-                                               filename = "bl31.bin";
-                                               type = "atf-bl31";
+                                       atf {
+                                               description = "ARM Trusted 
Firmware";
+                                               type = "firmware";
+                                               arch = "arm64";
+                                               compression = "none";
+                                               load = <0x970000>;
+                                               entry = <0x970000>;
+
+                                               atf_blob: atf-blob {
+                                                       filename = "bl31.bin";
+                                                       type = "atf-bl31";
+                                               };
                                        };
-                               };
 #endif
 
-                               @fdt-SEQ {
-                                       description = "NAME";
-                                       type = "flat_dt";
-                                       compression = "none";
+                                       @fdt-SEQ {
+                                               description = "NAME";
+                                               type = "flat_dt";
+                                               compression = "none";
 
-                                       blob-ext {
-                                               filename = "u-boot.dtb";
+                                               blob-ext {
+                                                       filename = "u-boot.dtb";
+                                               };
                                        };
                                };
-                       };
 
-                       configurations {
-                               default = "@config-DEFAULT-SEQ";
+                               configurations {
+                                       default = "@config-DEFAULT-SEQ";
 
-                               @config-SEQ {
-                                       description = "NAME";
-                                       fdt = "fdt-SEQ";
-                                       firmware = "uboot";
+                                       @config-SEQ {
+                                               description = "NAME";
+                                               fdt = "fdt-SEQ";
+                                               firmware = "uboot";
 #ifndef CONFIG_ARMV8_PSCI
-                                       loadables = "atf";
+                                               loadables = "atf";
 #endif
+                                       };
                                };
                        };
+#ifdef CONFIG_IMX_HAB
                };
+#endif
        };
 };
diff --git a/arch/arm/dts/imx8mq-u-boot.dtsi b/arch/arm/dts/imx8mq-u-boot.dtsi
index 72da674d245..e1cd6f8996d 100644
--- a/arch/arm/dts/imx8mq-u-boot.dtsi
+++ b/arch/arm/dts/imx8mq-u-boot.dtsi
@@ -38,116 +38,136 @@
        section {
                pad-byte = <0x00>;
 
-               binman_imx_spl: nxp-imx8mimage {
-                       filename = "u-boot-spl-mkimage.bin";
-                       nxp,boot-from = "sd";
-                       nxp,rom-version = <1>;
+#ifdef CONFIG_IMX_HAB
+               nxp-imx8mcst@0 {
+                       filename = "u-boot-spl-mkimage.signed.bin";
                        nxp,loader-address = <CONFIG_SPL_TEXT_BASE>;
+                       nxp,unlock;
                        args;   /* Needed by mkimage etype superclass */
+#endif
 
-                       section {
-                               align = <4>;
-                               align-size = <4>;
-                               filename = "u-boot-spl-ddr.bin";
-                               pad-byte = <0xff>;
-
-                               u-boot-spl {
-                                       align-end = <4>;
-                                       filename = "u-boot-spl.bin";
-                               };
+                       binman_imx_spl: nxp-imx8mimage {
+                               filename = "u-boot-spl-mkimage.bin";
+                               nxp,boot-from = "sd";
+                               nxp,rom-version = <1>;
+                               nxp,loader-address = <CONFIG_SPL_TEXT_BASE>;
+                               args;   /* Needed by mkimage etype superclass */
+
+                               section {
+                                       align = <4>;
+                                       align-size = <4>;
+                                       filename = "u-boot-spl-ddr.bin";
+                                       pad-byte = <0xff>;
+
+                                       u-boot-spl {
+                                               align-end = <4>;
+                                               filename = "u-boot-spl.bin";
+                                       };
 
-                               ddr-1d-imem-fw {
-                                       filename = 
"lpddr4_pmu_train_1d_imem.bin";
-                                       align-end = <4>;
-                                       type = "blob-ext";
-                               };
+                                       ddr-1d-imem-fw {
+                                               filename = 
"lpddr4_pmu_train_1d_imem.bin";
+                                               align-end = <4>;
+                                               type = "blob-ext";
+                                       };
 
-                               ddr-1d-dmem-fw {
-                                       filename = 
"lpddr4_pmu_train_1d_dmem.bin";
-                                       align-end = <4>;
-                                       type = "blob-ext";
-                               };
+                                       ddr-1d-dmem-fw {
+                                               filename = 
"lpddr4_pmu_train_1d_dmem.bin";
+                                               align-end = <4>;
+                                               type = "blob-ext";
+                                       };
 
-                               ddr-2d-imem-fw {
-                                       filename = 
"lpddr4_pmu_train_2d_imem.bin";
-                                       align-end = <4>;
-                                       type = "blob-ext";
-                               };
+                                       ddr-2d-imem-fw {
+                                               filename = 
"lpddr4_pmu_train_2d_imem.bin";
+                                               align-end = <4>;
+                                               type = "blob-ext";
+                                       };
 
-                               ddr-2d-dmem-fw {
-                                       filename = 
"lpddr4_pmu_train_2d_dmem.bin";
-                                       align-end = <4>;
-                                       type = "blob-ext";
-                               };
+                                       ddr-2d-dmem-fw {
+                                               filename = 
"lpddr4_pmu_train_2d_dmem.bin";
+                                               align-end = <4>;
+                                               type = "blob-ext";
+                                       };
 
-                               signed-hdmi-imx8m {
-                                       filename = "signed_hdmi_imx8m.bin";
-                                       type = "blob-ext";
+                                       signed-hdmi-imx8m {
+                                               filename = 
"signed_hdmi_imx8m.bin";
+                                               type = "blob-ext";
+                                       };
                                };
                        };
+#ifdef CONFIG_IMX_HAB
                };
 
-               binman_imx_fit: fit {
-                       description = "Configuration to load ATF before U-Boot";
+               nxp-imx8mcst@1 {
+                       filename = "u-boot-fit.signed.bin";
+                       nxp,loader-address = <CONFIG_SPL_LOAD_FIT_ADDRESS>;
+                       offset = <0x58000>;
+                       args;   /* Needed by mkimage etype superclass */
+#endif
+
+                       binman_imx_fit: fit {
+                               description = "Configuration to load ATF before 
U-Boot";
 #ifndef CONFIG_IMX_HAB
-                       fit,external-offset = <CONFIG_FIT_EXTERNAL_OFFSET>;
+                               fit,external-offset = 
<CONFIG_FIT_EXTERNAL_OFFSET>;
 #endif
-                       #address-cells = <1>;
-
-                       images {
-                               uboot {
-                                       arch = "arm64";
-                                       compression = "none";
-                                       description = "U-Boot (64-bit)";
-                                       load = <CONFIG_TEXT_BASE>;
-                                       type = "standalone";
-
-                                       uboot-blob {
-                                               filename = "u-boot-nodtb.bin";
-                                               type = "blob-ext";
+                               #address-cells = <1>;
+
+                               images {
+                                       uboot {
+                                               arch = "arm64";
+                                               compression = "none";
+                                               description = "U-Boot (64-bit)";
+                                               load = <CONFIG_TEXT_BASE>;
+                                               type = "standalone";
+
+                                               uboot-blob {
+                                                       filename = 
"u-boot-nodtb.bin";
+                                                       type = "blob-ext";
+                                               };
                                        };
-                               };
 
 #ifndef CONFIG_ARMV8_PSCI
-                               atf {
-                                       arch = "arm64";
-                                       compression = "none";
-                                       description = "ARM Trusted Firmware";
-                                       entry = <0x910000>;
-                                       load = <0x910000>;
-                                       type = "firmware";
-
-                                       atf-blob {
-                                               filename = "bl31.bin";
-                                               type = "blob-ext";
+                                       atf {
+                                               arch = "arm64";
+                                               compression = "none";
+                                               description = "ARM Trusted 
Firmware";
+                                               entry = <0x910000>;
+                                               load = <0x910000>;
+                                               type = "firmware";
+
+                                               atf-blob {
+                                                       filename = "bl31.bin";
+                                                       type = "blob-ext";
+                                               };
                                        };
-                               };
 #endif
 
-                               fdt {
-                                       compression = "none";
-                                       description = "NAME";
-                                       type = "flat_dt";
+                                       fdt {
+                                               compression = "none";
+                                               description = "NAME";
+                                               type = "flat_dt";
 
-                                       uboot-fdt-blob {
-                                               filename = "u-boot.dtb";
-                                               type = "blob-ext";
+                                               uboot-fdt-blob {
+                                                       filename = "u-boot.dtb";
+                                                       type = "blob-ext";
+                                               };
                                        };
                                };
-                       };
 
-                       configurations {
-                               default = "conf";
+                               configurations {
+                                       default = "conf";
 
-                               conf {
-                                       description = "NAME";
-                                       fdt = "fdt";
-                                       firmware = "uboot";
+                                       conf {
+                                               description = "NAME";
+                                               fdt = "fdt";
+                                               firmware = "uboot";
 #ifndef CONFIG_ARMV8_PSCI
-                                       loadables = "atf";
+                                               loadables = "atf";
 #endif
+                                       };
                                };
                        };
+#ifdef CONFIG_IMX_HAB
                };
+#endif
        };
 };
-- 
2.43.0

Reply via email to