sandbox: Enable support for the gzip command
authorSimon Glass <sjg@chromium.org>
Fri, 19 Nov 2021 20:23:52 +0000 (13:23 -0700)
committerAnatolij Gustschin <agust@denx.de>
Sun, 26 Dec 2021 22:02:19 +0000 (23:02 +0100)
This does not work with sandbox at present. Fix it up to use map_sysmem()
to convert an address to a pointer.

Signed-off-by: Simon Glass <sjg@chromium.org>
cmd/unzip.c

index 3d1f5f3..bc6cee0 100644 (file)
@@ -8,6 +8,7 @@
 #include <command.h>
 #include <env.h>
 #include <gzip.h>
+#include <mapmem.h>
 #include <part.h>
 
 static int do_unzip(struct cmd_tbl *cmdtp, int flag, int argc,
@@ -28,7 +29,8 @@ static int do_unzip(struct cmd_tbl *cmdtp, int flag, int argc,
                        return CMD_RET_USAGE;
        }
 
-       if (gunzip((void *) dst, dst_len, (void *) src, &src_len) != 0)
+       if (gunzip(map_sysmem(dst, dst_len), dst_len, map_sysmem(src, 0),
+                  &src_len) != 0)
                return 1;
 
        printf("Uncompressed size: %lu = 0x%lX\n", src_len, src_len);