summaryrefslogtreecommitdiffstats
path: root/tools/fit_image.c
diff options
context:
space:
mode:
authorGuilherme Maciel Ferreira <guilherme.maciel.ferreira@gmail.com>2013-12-01 12:43:10 -0700
committerTom Rini <trini@ti.com>2013-12-13 09:15:32 -0500
commitf86ed6a8d52c99bb2d17d3cac1647edca0c4399c (patch)
tree60918bb807d062bf1ee3771b2ac4ff1057ec5e7a /tools/fit_image.c
parentf1cc458cf3b1c972082b14c7901b43300634a78a (diff)
downloadtalos-obmc-uboot-f86ed6a8d52c99bb2d17d3cac1647edca0c4399c.tar.gz
talos-obmc-uboot-f86ed6a8d52c99bb2d17d3cac1647edca0c4399c.zip
tools: moved code common to all image tools to a separated module.
In order to avoid duplicating code and keep only one point of modification, the functions, structs and defines useful for "dumpimage" were moved from "mkimage" to a common module called "imagetool". This modification also weakens the coupling between image types (FIT, IMX, MXS, and so on) and image tools (mkimage and dumpimage). Any tool may initialize the "imagetool" through register_image_tool() function, while the image types register themselves within an image tool using the register_image_type() function: +---------------+ +------| fit_image | +--------------+ +-----------+ | +---------------+ | mkimage |--------> | | <-----+ +--------------+ | | +---------------+ | imagetool | <------------| imximage | +--------------+ | | +---------------+ | dumpimage |--------> | | <-----+ +--------------+ +-----------+ | +---------------+ +------| default_image | +---------------+ register_image_tool() register_image_type() Also, the struct "mkimage_params" was renamed to "image_tool_params" to make clear its general purpose. Signed-off-by: Guilherme Maciel Ferreira <guilherme.maciel.ferreira@gmail.com> Signed-off-by: Simon Glass <sjg@chromium.org>
Diffstat (limited to 'tools/fit_image.c')
-rw-r--r--tools/fit_image.c11
1 files changed, 6 insertions, 5 deletions
diff --git a/tools/fit_image.c b/tools/fit_image.c
index 0400a60678..1466164f0a 100644
--- a/tools/fit_image.c
+++ b/tools/fit_image.c
@@ -14,6 +14,7 @@
* SPDX-License-Identifier: GPL-2.0+
*/
+#include "imagetool.h"
#include "mkimage.h"
#include <image.h>
#include <u-boot/crc.h>
@@ -21,7 +22,7 @@
static image_header_t header;
static int fit_verify_header (unsigned char *ptr, int image_size,
- struct mkimage_params *params)
+ struct image_tool_params *params)
{
return fdt_check_header(ptr);
}
@@ -34,7 +35,7 @@ static int fit_check_image_types (uint8_t type)
return EXIT_FAILURE;
}
-int mmap_fdt(struct mkimage_params *params, const char *fname, void **blobp,
+int mmap_fdt(struct image_tool_params *params, const char *fname, void **blobp,
struct stat *sbuf)
{
void *ptr;
@@ -88,7 +89,7 @@ int mmap_fdt(struct mkimage_params *params, const char *fname, void **blobp,
* returns:
* only on success, otherwise calls exit (EXIT_FAILURE);
*/
-static int fit_handle_file (struct mkimage_params *params)
+static int fit_handle_file(struct image_tool_params *params)
{
char tmpfile[MKIMAGE_MAX_TMPFILE_LEN];
char cmd[MKIMAGE_MAX_DTC_CMDLINE_LEN];
@@ -184,7 +185,7 @@ err_system:
return -1;
}
-static int fit_check_params (struct mkimage_params *params)
+static int fit_check_params(struct image_tool_params *params)
{
return ((params->dflag && (params->fflag || params->lflag)) ||
(params->fflag && (params->dflag || params->lflag)) ||
@@ -205,5 +206,5 @@ static struct image_type_params fitimage_params = {
void init_fit_image_type (void)
{
- mkimage_register (&fitimage_params);
+ register_image_type(&fitimage_params);
}
OpenPOWER on IntegriCloud