Switch to use binman pack images

Signed-off-by: Oliver Graute <oliver.gra...@kococonnector.com>
Reviewed-by: Peng Fan <peng....@nxp.com>
---
 arch/arm/dts/fsl-imx8qxp-mek-u-boot.dtsi | 127 +++++++++++++++++++++++
 arch/arm/mach-imx/imx8/Kconfig           |   1 +
 board/freescale/imx8qxp_mek/imximage.cfg |   3 +-
 configs/imx8qxp_mek_defconfig            |   2 +
 doc/board/nxp/imx8qxp_mek.rst            |   2 +-
 5 files changed, 132 insertions(+), 3 deletions(-)

diff --git a/arch/arm/dts/fsl-imx8qxp-mek-u-boot.dtsi 
b/arch/arm/dts/fsl-imx8qxp-mek-u-boot.dtsi
index ae037c7550..073a401a1c 100644
--- a/arch/arm/dts/fsl-imx8qxp-mek-u-boot.dtsi
+++ b/arch/arm/dts/fsl-imx8qxp-mek-u-boot.dtsi
@@ -3,6 +3,133 @@
  * Copyright 2018, 2021 NXP
  */
 
+/ {
+       binman: binman {
+               multiple-images;
+       };
+};
+
+&binman {
+       u-boot-spl-ddr {
+               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";
+               };
+       };
+
+       spl {
+               filename = "spl.bin";
+
+               mkimage {
+                       args = "-n spl/u-boot-spl.cfgout -T imx8image -e 
0x100000";
+
+                       blob {
+                               filename = "u-boot-spl-ddr.bin";
+                       };
+               };
+       };
+
+       itb {
+               filename = "u-boot.itb";
+
+               fit {
+                       description = "Configuration to load ATF before U-Boot";
+                       fit,external-offset = <CONFIG_FIT_EXTERNAL_OFFSET>;
+                       fit,fdt-list = "of-list";
+                       #address-cells = <1>;
+
+                       images {
+                               uboot {
+                                       arch = "arm64";
+                                       compression = "none";
+                                       description = "U-Boot (64-bit)";
+                                       load = <CONFIG_SYS_TEXT_BASE>;
+                                       type = "standalone";
+
+                                       uboot-blob {
+                                               filename = "u-boot-nodtb.bin";
+                                               type = "blob-ext";
+                                       };
+                               };
+
+                               atf {
+                                       arch = "arm64";
+                                       compression = "none";
+                                       description = "ARM Trusted Firmware";
+                                       entry = <0x00910000>;
+                                       load =  <0x00091000>;
+                                       type = "firmware";
+
+                                       atf-blob {
+                                               filename = "bl31.bin";
+                                               type = "atf-bl31";
+                                       };
+                               };
+
+                               scfw {
+                                       arch = "arm64";
+                                       compression = "none";
+                                       description = "System Controler 
Firmware";
+                                       type = "firmware";
+
+                                       scfw_blob {
+                                               filename = 
"mx8qx-mek-scfw-tcm.bin";
+                                               type = "blob-ext";
+                                       };
+                               };
+
+                               seco {
+                                       arch = "arm64";
+                                       compression = "none";
+                                       description = "Seco Firmware";
+                                       type = "firmware";
+
+                                       seco_blob {
+                                               filename = 
"mx8qxc0-ahab-container.img";
+                                               type = "blob-ext";
+                                       };
+                               };
+
+                               fdt {
+                                       type = "flat_dt";
+                                       compression = "none";
+
+                                       uboot-fdt-blob {
+                                               filename = "u-boot.dtb";
+                                               type = "blob-ext";
+                                       };
+                               };
+                       };
+
+                       configurations {
+                               default = "conf";
+
+                               conf {
+                                       fdt = "fdt";
+                                       firmware = "uboot";
+                                       loadables = "atf";
+                               };
+                       };
+               };
+       };
+
+       imx-boot {
+               filename = "flash.bin";
+               pad-byte = <0x00>;
+
+               spl {
+                       filename = "spl.bin";
+                       offset = <0x0>;
+                       type = "blob-ext";
+               };
+       };
+};
+
 &{/imx8qx-pm} {
 
        u-boot,dm-spl;
diff --git a/arch/arm/mach-imx/imx8/Kconfig b/arch/arm/mach-imx/imx8/Kconfig
index d423cf8563..23a7fcf361 100644
--- a/arch/arm/mach-imx/imx8/Kconfig
+++ b/arch/arm/mach-imx/imx8/Kconfig
@@ -90,6 +90,7 @@ config TARGET_IMX8QM_ROM7720_A1
 
 config TARGET_IMX8QXP_MEK
        bool "Support i.MX8QXP MEK board"
+       select BINMAN
        select BOARD_LATE_INIT
        select IMX8QXP
        select FSL_CAAM
diff --git a/board/freescale/imx8qxp_mek/imximage.cfg 
b/board/freescale/imx8qxp_mek/imximage.cfg
index 89a4736ab7..88d6955a9e 100644
--- a/board/freescale/imx8qxp_mek/imximage.cfg
+++ b/board/freescale/imx8qxp_mek/imximage.cfg
@@ -7,8 +7,7 @@
  */
 
 
-/* Boot from SD, sector size 0x400 */
-BOOT_FROM SD 0x400
+BOOT_FROM      sd
 /* SoC type IMX8QX */
 SOC_TYPE IMX8QX
 /* Append seco container image */
diff --git a/configs/imx8qxp_mek_defconfig b/configs/imx8qxp_mek_defconfig
index 73600c5a8c..0e22f13c7f 100644
--- a/configs/imx8qxp_mek_defconfig
+++ b/configs/imx8qxp_mek_defconfig
@@ -23,6 +23,8 @@ CONFIG_SYS_LOAD_ADDR=0x80280000
 CONFIG_HAS_CUSTOM_SYS_INIT_SP_ADDR=y
 CONFIG_CUSTOM_SYS_INIT_SP_ADDR=0x80200000
 CONFIG_REMAKE_ELF=y
+CONFIG_FIT=y
+CONFIG_FIT_EXTERNAL_OFFSET=0x3000
 CONFIG_OF_BOARD_SETUP=y
 CONFIG_OF_SYSTEM_SETUP=y
 CONFIG_BOOTDELAY=3
diff --git a/doc/board/nxp/imx8qxp_mek.rst b/doc/board/nxp/imx8qxp_mek.rst
index 215627cfa6..708db1952e 100644
--- a/doc/board/nxp/imx8qxp_mek.rst
+++ b/doc/board/nxp/imx8qxp_mek.rst
@@ -50,7 +50,7 @@ Build U-Boot
 .. code-block:: bash
 
   $ make imx8qxp_mek_defconfig
-  $ make flash.bin
+  $ make
 
 Flash the binary into the SD card
 ---------------------------------
-- 
2.17.1

Reply via email to