arm: imx: Pack u-boot.bin into uImage for SPL
authorMarek Vasut <marex@denx.de>
Sun, 21 Apr 2013 05:52:24 +0000 (05:52 +0000)
committerStefano Babic <sbabic@denx.de>
Sun, 5 May 2013 15:45:05 +0000 (17:45 +0200)
The U-Boot SPL can parse the uImage format and gather information from
it about the payload. Make use of this and wrap u-boot.bin into uImage
format. The benefit is the SPL will know the size of the payload
instead of using fixed size of the payload defined at compile time.

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Albert ARIBAUD <albert.u.boot@aribaud.net>
Cc: Benoît Thébaudeau <benoit.thebaudeau@advansee.com>
Cc: Fabio Estevam <fabio.estevam@freescale.com>
Cc: Scott Wood <scottwood@freescale.com>
Cc: Stefano Babic <sbabic@denx.de>
Cc: Tom Rini <trini@ti.com>
arch/arm/imx-common/Makefile

index 93094394208de0e8dc1bc2e9744ed396df8df50b..1166488c2b1ca48f41126f84239f1d484dbc6cc8 100644 (file)
@@ -61,8 +61,11 @@ $(OBJTREE)/SPL: $(OBJTREE)/spl/u-boot-spl.bin $(OBJTREE)/$(patsubst "%",%,$(CONF
 $(OBJTREE)/u-boot-with-spl.imx: $(OBJTREE)/SPL $(OBJTREE)/u-boot.bin
        $(OBJCOPY) ${OBJCFLAGS} --pad-to=$(CONFIG_SPL_PAD_TO) \
                -I binary -O binary $< $(OBJTREE)/spl/u-boot-spl-pad.imx
-       cat $(OBJTREE)/spl/u-boot-spl-pad.imx $(OBJTREE)/u-boot.bin > $@
-       rm $(OBJTREE)/spl/u-boot-spl-pad.imx
+       $(OBJTREE)/tools/mkimage -A arm -O U-Boot -a $(CONFIG_SYS_TEXT_BASE) \
+               -e $(CONFIG_SYS_TEXT_BASE) -C none -d $(OBJTREE)/u-boot.bin \
+               $(OBJTREE)/u-boot.uim
+       cat $(OBJTREE)/spl/u-boot-spl-pad.imx $(OBJTREE)/u-boot.uim > $@
+       rm $(OBJTREE)/spl/u-boot-spl-pad.imx $(OBJTREE)/u-boot.uim
 
 $(OBJTREE)/u-boot-with-nand-spl.imx: $(OBJTREE)/SPL $(OBJTREE)/u-boot.bin
        (echo -ne '\x00\x00\x00\x00\x46\x43\x42\x20\x01' && \
@@ -72,8 +75,11 @@ $(OBJTREE)/u-boot-with-nand-spl.imx: $(OBJTREE)/SPL $(OBJTREE)/u-boot.bin
                -I binary -O binary $(OBJTREE)/spl/u-boot-nand-spl.imx \
                $(OBJTREE)/spl/u-boot-nand-spl-pad.imx
        rm $(OBJTREE)/spl/u-boot-nand-spl.imx
-       cat $(OBJTREE)/spl/u-boot-nand-spl-pad.imx $(OBJTREE)/u-boot.bin > $@
-       rm $(OBJTREE)/spl/u-boot-nand-spl-pad.imx
+       $(OBJTREE)/tools/mkimage -A arm -O U-Boot -a $(CONFIG_SYS_TEXT_BASE) \
+               -e $(CONFIG_SYS_TEXT_BASE) -C none -d $(OBJTREE)/u-boot.bin \
+               $(OBJTREE)/u-boot.uim
+       cat $(OBJTREE)/spl/u-boot-nand-spl-pad.imx $(OBJTREE)/u-boot.uim > $@
+       rm $(OBJTREE)/spl/u-boot-nand-spl-pad.imx $(OBJTREE)/u-boot.uim
 
 
 #########################################################################