colibri_imx6: add update_uboot wrapper
authorIgor Opaniuk <igor.opaniuk@toradex.com>
Mon, 9 Dec 2019 10:33:30 +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.

> 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/colibri_imx6.h

index 95b5a14b595c93d94d829fad9cb06932efa1fb4a..750463ef47c76d718fc3936ed4d304a98959313e 100644 (file)
        "imx6dl-colibri-eval-v3.dtb fat 0 1;" \
        "imx6dl-colibri-cam-eval-v3.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} "\
                "rw,noatime rootfstype=ext4 " \
        "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" \