[PATCH v2] imxtract: specify max gunzip size

Nikita Shubin nikita.shubin at maquefel.me
Mon Dec 19 09:05:27 CET 2022


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(-)

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