Add dumpimage, a tool to extract data from U-Boot images
Given a multi-file image created through the mkimage's -d option:
$ mkimage -A x86 -O linux -T multi -n x86 -d vmlinuz:initrd.img:System.map \
multi.img
Image Name: x86
Created: Thu Jul 25 10:29:13 2013
Image Type: Intel x86 Linux Multi-File Image (gzip compressed)
Data Size: 13722956 Bytes = 13401.32 kB = 13.09 MB
Load Address: 00000000
Entry Point: 00000000
Contents:
Image 0: 4040128 Bytes = 3945.44 kB = 3.85 MB
Image 1: 7991719 Bytes = 7804.41 kB = 7.62 MB
Image 2: 1691092 Bytes = 1651.46 kB = 1.61 MB
It is possible to perform the innverse operation -- extracting any file from
the image -- by using the dumpimage's -i option:
$ dumpimage -i multi.img -p 2 System.map
Although it's feasible to retrieve "data files" from image through scripting,
the requirement to embed tools such 'dd', 'awk' and 'sed' for this sole purpose
is cumbersome and unreliable -- once you must keep track of file sizes inside
the image. Furthermore, extracting data files using "dumpimage" tool is faster
than through scripting.
Signed-off-by: Guilherme Maciel Ferreira <guilherme.maciel.ferreira@gmail.com>
Signed-off-by: Simon Glass <sjg@chromium.org>
This commit is contained in:
committed by
Tom Rini
parent
f86ed6a8d5
commit
a804b5ce2d
@@ -50,6 +50,7 @@ BIN_FILES-$(CONFIG_BUILD_ENVCRC) += envcrc$(SFX)
|
||||
BIN_FILES-$(CONFIG_CMD_NET) += gen_eth_addr$(SFX)
|
||||
BIN_FILES-$(CONFIG_CMD_LOADS) += img2srec$(SFX)
|
||||
BIN_FILES-$(CONFIG_XWAY_SWAP_BYTES) += xway-swap-bytes$(SFX)
|
||||
BIN_FILES-y += dumpimage$(SFX)
|
||||
BIN_FILES-y += mkenvimage$(SFX)
|
||||
BIN_FILES-y += mkimage$(SFX)
|
||||
BIN_FILES-$(CONFIG_EXYNOS5250) += mk$(BOARD)spl$(SFX)
|
||||
@@ -72,6 +73,7 @@ EXT_OBJ_FILES-y += lib/sha1.o
|
||||
# Source files located in the tools directory
|
||||
NOPED_OBJ_FILES-y += aisimage.o
|
||||
NOPED_OBJ_FILES-y += default_image.o
|
||||
NOPED_OBJ_FILES-y += dumpimage.o
|
||||
NOPED_OBJ_FILES-y += fit_image.o
|
||||
NOPED_OBJ_FILES-y += image-host.o
|
||||
NOPED_OBJ_FILES-y += imximage.o
|
||||
@@ -200,6 +202,30 @@ $(obj)xway-swap-bytes$(SFX): $(obj)xway-swap-bytes.o
|
||||
$(HOSTCC) $(HOSTCFLAGS) $(HOSTLDFLAGS) -o $@ $^
|
||||
$(HOSTSTRIP) $@
|
||||
|
||||
$(obj)dumpimage$(SFX): $(obj)aisimage.o \
|
||||
$(FIT_SIG_OBJS) \
|
||||
$(obj)crc32.o \
|
||||
$(obj)default_image.o \
|
||||
$(obj)fit_image.o \
|
||||
$(obj)image-fit.o \
|
||||
$(obj)image.o \
|
||||
$(obj)image-host.o \
|
||||
$(obj)imagetool.o \
|
||||
$(obj)imximage.o \
|
||||
$(obj)kwbimage.o \
|
||||
$(obj)dumpimage.o \
|
||||
$(obj)md5.o \
|
||||
$(obj)mxsimage.o \
|
||||
$(obj)omapimage.o \
|
||||
$(obj)os_support.o \
|
||||
$(obj)pblimage.o \
|
||||
$(obj)sha1.o \
|
||||
$(obj)ublimage.o \
|
||||
$(LIBFDT_OBJS) \
|
||||
$(RSA_OBJS)
|
||||
$(HOSTCC) $(HOSTCFLAGS) $(HOSTLDFLAGS) -o $@ $^ $(HOSTLIBS)
|
||||
$(HOSTSTRIP) $@
|
||||
|
||||
$(obj)mkenvimage$(SFX): $(obj)crc32.o $(obj)mkenvimage.o \
|
||||
$(obj)os_support.o
|
||||
$(HOSTCC) $(HOSTCFLAGS) $(HOSTLDFLAGS) -o $@ $^
|
||||
|
||||
Reference in New Issue
Block a user