[PATCH v2] imxtract: specify max gunzip size

Simon Glass sjg at chromium.org
Mon Dec 19 20:20:41 CET 2022


On Mon, 19 Dec 2022 at 01:05, Nikita Shubin <nikita.shubin at maquefel.me> wrote:
>
> From: Nikita Shubin <n.shubin at yadro.com>
>
> Specify max gunzip size from config to override SYS_XIMG_LEN
> default value wich is 0x800000. In case we have a large portion of FIT
> image, for example gzipped kernel with decompressed size large than
> 0x800000 we should enlarge imxract area, otherwise extracting it will
> fail.
>
> It used to be a hardcoded define in cmd/ximg.c and we are moving it to
> config.
>
> Signed-off-by: Nikita Shubin <n.shubin at yadro.com>
> ---
> Hello Simon!
>
> > Can you expand what this means?
>
> Yes you are right - i should be more verbose, please check a v2 version
> of this patch.
>
> Also i thought it's a good idea to drop hardcoded define in cmd/ximg.c
> completely.
>
> v1 -> v2:
>
> - more verbosity in help
> - drop define from cmd/ximg.c, take it from config
> ---
>  cmd/Kconfig | 10 ++++++++++
>  cmd/ximg.c  |  5 -----
>  2 files changed, 10 insertions(+), 5 deletions(-)

Reviewed-by: Simon Glass <sjg at chromium.org>


>
> diff --git a/cmd/Kconfig b/cmd/Kconfig
> index d93731f2af6..516dfd102f6 100644
> --- a/cmd/Kconfig
> +++ b/cmd/Kconfig
> @@ -476,6 +476,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_XXD
>         bool "xxd"
>         help
> diff --git a/cmd/ximg.c b/cmd/ximg.c
> index 1c40fd27a05..0a41b4b3bb2 100644
> --- a/cmd/ximg.c
> +++ b/cmd/ximg.c
> @@ -27,11 +27,6 @@
>  #include <asm/cache.h>
>  #include <asm/io.h>
>
> -#ifndef CONFIG_SYS_XIMG_LEN
> -/* use 8MByte as default max gunzip size */
> -#define CONFIG_SYS_XIMG_LEN    0x800000
> -#endif
> -
>  static int
>  do_imgextract(struct cmd_tbl *cmdtp, int flag, int argc, char *const argv[])
>  {
> --
> 2.37.4
>


More information about the U-Boot mailing list