]>
git.ipfire.org Git - people/ms/u-boot.git/blob - cmd/lzmadec.c
2 * (C) Copyright 2013 Patrice Bouchand <pbfwdlist_gmail_com>
3 * lzma uncompress command in Uboot
5 * made from existing cmd_unzip.c file of Uboot
8 * Wolfgang Denk, DENX Software Engineering, wd@denx.de.
10 * SPDX-License-Identifier: GPL-2.0+
18 #include <lzma/LzmaTools.h>
20 static int do_lzmadec(cmd_tbl_t
*cmdtp
, int flag
, int argc
, char *const argv
[])
22 unsigned long src
, dst
;
23 SizeT src_len
= ~0UL, dst_len
= ~0UL;
28 dst_len
= simple_strtoul(argv
[3], NULL
, 16);
31 src
= simple_strtoul(argv
[1], NULL
, 16);
32 dst
= simple_strtoul(argv
[2], NULL
, 16);
38 ret
= lzmaBuffToBuffDecompress(map_sysmem(dst
, dst_len
), &src_len
,
39 map_sysmem(src
, 0), dst_len
);
43 printf("Uncompressed size: %ld = %#lX\n", (ulong
)src_len
,
45 env_set_hex("filesize", src_len
);
51 lzmadec
, 4, 1, do_lzmadec
,
52 "lzma uncompress a memory region",
53 "srcaddr dstaddr [dstsize]"