summaryrefslogtreecommitdiff
path: root/include/image.h
diff options
context:
space:
mode:
authorGuilherme Maciel Ferreira <guilherme.maciel.ferreira@gmail.com>2015-01-15 02:54:42 -0200
committerTom Rini <trini@ti.com>2015-01-29 13:38:41 -0500
commit39931f966adaeadd66dc7a905f7dddb93f66bac3 (patch)
treec5cee757daca70b9966e3781f064dc7cfdcbacf4 /include/image.h
parent67f946cd18ce56a7caf6195834334a585a669056 (diff)
downloadu-boot-imx-39931f966adaeadd66dc7a905f7dddb93f66bac3.zip
u-boot-imx-39931f966adaeadd66dc7a905f7dddb93f66bac3.tar.gz
u-boot-imx-39931f966adaeadd66dc7a905f7dddb93f66bac3.tar.bz2
dumpimage: fit: extract FIT images
The dumpimage is able to extract components contained in a FIT image: $ ./dumpimage -T flat_dt -i CONTAINER.ITB -p INDEX FILE The CONTAINER.ITB is a regular FIT container file. The INDEX is the poisition of the sub-image to be retrieved, and FILE is the file (path+name) to save the extracted sub-image. For example, given the following kernel.its to build a kernel.itb: /dts-v1/; / { ... images { kernel@1 { description = "Kernel 2.6.32-34"; data = /incbin/("/boot/vmlinuz-2.6.32-34-generic"); type = "kernel"; arch = "ppc"; os = "linux"; compression = "gzip"; load = <00000000>; entry = <00000000>; hash@1 { algo = "md5"; }; }; ... }; ... }; The dumpimage can extract the 'kernel@1' node through the following command: $ ./dumpimage -T flat_dt -i kernel.itb -p 0 kernel Extracted: Image 0 (kernel@1) Description: Kernel 2.6.32-34 Created: Wed Oct 22 15:50:26 2014 Type: Kernel Image Compression: gzip compressed Data Size: 4040128 Bytes = 3945.44 kB = 3.85 MB Architecture: PowerPC OS: Linux Load Address: 0x00000000 Entry Point: 0x00000000 Hash algo: md5 Hash value: 22352ad39bdc03e2e50f9cc28c1c3652 Which results in the file 'kernel' being exactly the same as '/boot/vmlinuz-2.6.32-34-generic'. Signed-off-by: Guilherme Maciel Ferreira <guilherme.maciel.ferreira@gmail.com>
Diffstat (limited to 'include/image.h')
-rw-r--r--include/image.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/include/image.h b/include/image.h
index ee3afe3..d861896 100644
--- a/include/image.h
+++ b/include/image.h
@@ -751,6 +751,7 @@ int fit_parse_conf(const char *spec, ulong addr_curr,
int fit_parse_subimage(const char *spec, ulong addr_curr,
ulong *addr, const char **image_name);
+int fit_get_subimage_count(const void *fit, int images_noffset);
void fit_print_contents(const void *fit);
void fit_image_print(const void *fit, int noffset, const char *p);