diff options
Diffstat (limited to 'cmd')
-rw-r--r-- | cmd/Kconfig | 10 | ||||
-rw-r--r-- | cmd/armflash.c | 12 | ||||
-rw-r--r-- | cmd/bootflow.c | 4 | ||||
-rw-r--r-- | cmd/part.c | 2 | ||||
-rw-r--r-- | cmd/ximg.c | 7 |
5 files changed, 24 insertions, 11 deletions
diff --git a/cmd/Kconfig b/cmd/Kconfig index 24bfbe5057..5a7678f0ac 100644 --- a/cmd/Kconfig +++ b/cmd/Kconfig @@ -495,6 +495,16 @@ config CMD_XIMG help Extract a part of a multi-image. +config SYS_XIMG_LEN + hex "imxtract max gunzip size" + default 0x800000 + depends on CMD_XIMG && GZIP + help + This provides the size of the commad-line argument area + used by imxtract for extracting pieces of FIT image. + It should be large enough to fit uncompressed size of + FIT piece we are extracting. + config CMD_SPL bool "spl export - Export boot information for Falcon boot" depends on SPL diff --git a/cmd/armflash.c b/cmd/armflash.c index d1466f73aa..fdaea5ad81 100644 --- a/cmd/armflash.c +++ b/cmd/armflash.c @@ -180,6 +180,7 @@ static int load_image(const char * const name, const ulong address) { struct afs_image *afi = NULL; int i; + loff_t len_read = 0; parse_flash(); for (i = 0; i < num_afs_images; i++) { @@ -197,6 +198,7 @@ static int load_image(const char * const name, const ulong address) for (i = 0; i < afi->region_count; i++) { ulong from, to; + u32 size; from = afi->flash_mem_start + afi->regions[i].offset; if (address) { @@ -208,14 +210,20 @@ static int load_image(const char * const name, const ulong address) return CMD_RET_FAILURE; } - memcpy((void *)to, (void *)from, afi->regions[i].size); + size = afi->regions[i].size; + memcpy((void *)to, (void *)from, size); printf("loaded region %d from %08lX to %08lX, %08X bytes\n", i, from, to, - afi->regions[i].size); + size); + + len_read += size; } + + env_set_hex("filesize", len_read); + return CMD_RET_SUCCESS; } diff --git a/cmd/bootflow.c b/cmd/bootflow.c index 4a47265ebd..cc6dfae166 100644 --- a/cmd/bootflow.c +++ b/cmd/bootflow.c @@ -543,9 +543,9 @@ static int do_bootflow_cmdline(struct cmd_tbl *cmdtp, int flag, int argc, op = argv[1]; arg = argv[2]; if (*op == 's') { - if (argc < 4) + if (argc < 3) return CMD_RET_USAGE; - val = argv[3]; + val = argv[3] ?: (const char *)BOOTFLOWCL_EMPTY; } switch (*op) { diff --git a/cmd/part.c b/cmd/part.c index 0ce190005d..c75f85acd5 100644 --- a/cmd/part.c +++ b/cmd/part.c @@ -308,9 +308,9 @@ U_BOOT_CMD( #ifdef CONFIG_PARTITION_TYPE_GUID "part type <interface> <dev>:<part>\n" " - print partition type\n" -#endif "part type <interface> <dev>:<part> <varname>\n" " - set environment variable to partition type\n" +#endif "part set <interface> <dev> type\n" " - set partition type for a device\n" "part types\n" diff --git a/cmd/ximg.c b/cmd/ximg.c index a50dd20b19..0e7eead8d1 100644 --- a/cmd/ximg.c +++ b/cmd/ximg.c @@ -27,11 +27,6 @@ #include <asm/cache.h> #include <asm/io.h> -#ifndef CFG_SYS_XIMG_LEN -/* use 8MByte as default max gunzip size */ -#define CFG_SYS_XIMG_LEN 0x800000 -#endif - static int do_imgextract(struct cmd_tbl *cmdtp, int flag, int argc, char *const argv[]) { @@ -52,7 +47,7 @@ do_imgextract(struct cmd_tbl *cmdtp, int flag, int argc, char *const argv[]) size_t fit_len; #endif #ifdef CONFIG_GZIP - uint unc_len = CFG_SYS_XIMG_LEN; + uint unc_len = CONFIG_SYS_XIMG_LEN; #endif uint8_t comp; |