[U-Boot] [PATCH v2] imx: add u-boot-nand.imx target

Igor Opaniuk igor.opaniuk at gmail.com
Wed Jul 24 13:19:05 UTC 2019


From: Igor Opaniuk <igor.opaniuk at toradex.com>

Add an additional target which prepends the u-boot.imx image with
0x400 padding bytes. On Vybrid and i.MX 7, i.MX6ULL this is required
for NAND boot devices. The configuration CONFIG_IMX_NAND enables this
image for a board.

Signed-off-by: Stefan Agner <stefan.agner at toradex.com>
Signed-off-by: Igor Opaniuk <igor.opaniuk at toradex.com>
---

v2:
 - Addressed Jagan's comment

 Kconfig                    | 1 +
 Makefile                   | 3 +++
 arch/arm/mach-imx/Makefile | 7 +++++++
 3 files changed, 11 insertions(+)

diff --git a/Kconfig b/Kconfig
index d2eb744e70..a791f58801 100644
--- a/Kconfig
+++ b/Kconfig
@@ -253,6 +253,7 @@ config BUILD_TARGET
 	default "u-boot.itb" if SPL_LOAD_FIT && (ROCKCHIP_RK3399 || ARCH_SUNXI)
 	default "u-boot.kwb" if KIRKWOOD
 	default "u-boot-with-spl.bin" if ARCH_AT91 && SPL_NAND_SUPPORT
+	default "u-boot-nand.imx" if (ARCH_MX6 || ARCH_MX7) || NAND_BOOT
 	help
 	  Some SoCs need special image types (e.g. U-Boot binary
 	  with a special header) as build targets. By defining
diff --git a/Makefile b/Makefile
index 73fdf70cdd..287b74dd50 100644
--- a/Makefile
+++ b/Makefile
@@ -1106,6 +1106,9 @@ endif
 %.vyb: %.imx
 	$(Q)$(MAKE) $(build)=arch/arm/cpu/armv7/vf610 $@
 
+u-boot-nand.imx: u-boot.imx
+	$(Q)$(MAKE) $(build)=arch/arm/mach-imx $@
+
 quiet_cmd_copy = COPY    $@
       cmd_copy = cp $< $@
 
diff --git a/arch/arm/mach-imx/Makefile b/arch/arm/mach-imx/Makefile
index 898478fc4a..365a5951f1 100644
--- a/arch/arm/mach-imx/Makefile
+++ b/arch/arm/mach-imx/Makefile
@@ -112,6 +112,13 @@ u-boot.imx: MKIMAGEOUTPUT = u-boot.imx.log
 u-boot.imx: u-boot.bin u-boot.cfgout $(PLUGIN).bin FORCE
 	$(call if_changed,mkimage)
 
+ifeq ($(CONFIG_NAND_BOOT),y)
+cmd_u-boot-nand_imx = (dd bs=1024 count=1 if=/dev/zero 2>/dev/null) | \
+	cat - $< > $@
+u-boot-nand.imx: u-boot.imx FORCE
+	$(call if_changed,u-boot-nand_imx)
+endif
+
 ifeq ($(CONFIG_MULTI_DTB_FIT),y)
 MKIMAGEFLAGS_u-boot-dtb.imx = -n $(filter-out $(PLUGIN).bin $< $(PHONY),$^) \
 	-T $(IMAGE_TYPE) -e $(CONFIG_SYS_TEXT_BASE)
-- 
2.17.1



More information about the U-Boot mailing list