apalis_imx6: add update_uboot wrapper
authorIgor Opaniuk <igor.opaniuk@toradex.com>
Mon, 9 Dec 2019 10:33:29 +0000 (12:33 +0200)
committerStefano Babic <sbabic@denx.de>
Tue, 7 Jan 2020 09:26:56 +0000 (10:26 +0100)
Add universal update_uboot wrapper that helps to update
U-Boot image on internal storage.

Usage example:
> tftpboot ${loadaddr} ${board_name}/u-boot.img
> run update_uboot
> tftpboot ${loadaddr} ${board_name}/SPL
> run update_spl

Signed-off-by: Igor Opaniuk <igor.opaniuk@toradex.com>
include/configs/apalis_imx6.h

index 50a4391cd47d8c50128b906be209d93a333eb235..800f27ccbbba38e701549253f3f123140e203a3e 100644 (file)
        "imx6q-apalis-eval.dtb fat 0 1;" \
        "imx6q-apalis-cam-eval.dtb fat 0 1"
 
+#define UBOOT_UPDATE \
+       "uboot_hwpart=1\0" \
+       "uboot_blk=8a\0" \
+       "uboot_spl_blk=2\0" \
+       "set_blkcnt=setexpr blkcnt ${filesize} + 0x1ff && " \
+               "setexpr blkcnt ${blkcnt} / 0x200\0" \
+       "update_uboot=run set_blkcnt && mmc dev 0 ${uboot_hwpart} && " \
+               "mmc write ${loadaddr} ${uboot_blk} ${blkcnt}\0" \
+       "update_spl=run set_blkcnt && mmc dev 0 ${uboot_hwpart} && " \
+               "mmc write ${loadaddr} ${uboot_spl_blk} ${blkcnt}\0"
+
 #define EMMC_BOOTCMD \
        "set_emmcargs=setenv emmcargs ip=off root=PARTUUID=${uuid} " \
                "ro,noatime rootfstype=ext4 rootwait\0" \
        "fdt_fixup=;\0" \
        MEM_LAYOUT_ENV_SETTINGS \
        NFS_BOOTCMD \
+       UBOOT_UPDATE \
        "setethupdate=if env exists ethaddr; then; else setenv ethaddr " \
                "00:14:2d:00:00:00; fi; tftpboot ${loadaddr} " \
                "flash_eth.img && source ${loadaddr}\0" \