diff options
-rw-r--r-- | tools/Makefile | 2 | ||||
-rw-r--r-- | tools/aisimage.c | 16 | ||||
-rw-r--r-- | tools/default_image.c | 10 | ||||
-rw-r--r-- | tools/fit_image.c | 11 | ||||
-rw-r--r-- | tools/imagetool.c | 58 | ||||
-rw-r--r-- | tools/imagetool.h | 161 | ||||
-rw-r--r-- | tools/imximage.c | 12 | ||||
-rw-r--r-- | tools/kwbimage.c | 10 | ||||
-rw-r--r-- | tools/mkimage.c | 22 | ||||
-rw-r--r-- | tools/mkimage.h | 123 | ||||
-rw-r--r-- | tools/mxsimage.c | 12 | ||||
-rw-r--r-- | tools/omapimage.c | 10 | ||||
-rw-r--r-- | tools/pblimage.c | 10 | ||||
-rw-r--r-- | tools/ublimage.c | 10 |
14 files changed, 276 insertions, 191 deletions
diff --git a/tools/Makefile b/tools/Makefile index 14d94e3..154eae3 100644 --- a/tools/Makefile +++ b/tools/Makefile @@ -76,6 +76,7 @@ NOPED_OBJ_FILES-y += fit_image.o NOPED_OBJ_FILES-y += image-host.o NOPED_OBJ_FILES-y += imximage.o NOPED_OBJ_FILES-y += kwbimage.o +NOPED_OBJ_FILES-y += imagetool.o NOPED_OBJ_FILES-y += mkenvimage.o NOPED_OBJ_FILES-y += mkimage.o NOPED_OBJ_FILES-y += mxsimage.o @@ -212,6 +213,7 @@ $(obj)mkimage$(SFX): $(obj)aisimage.o \ $(obj)image-fit.o \ $(obj)image-host.o \ $(obj)image.o \ + $(obj)imagetool.o \ $(obj)imximage.o \ $(obj)kwbimage.o \ $(obj)md5.o \ diff --git a/tools/aisimage.c b/tools/aisimage.c index 04fb649..8de370a 100644 --- a/tools/aisimage.c +++ b/tools/aisimage.c @@ -5,7 +5,7 @@ * SPDX-License-Identifier: GPL-2.0+ */ -#include "mkimage.h" +#include "imagetool.h" #include "aisimage.h" #include <image.h> @@ -176,7 +176,7 @@ static uint32_t *ais_insert_cmd_header(uint32_t cmd, uint32_t nargs, } -static uint32_t *ais_alloc_buffer(struct mkimage_params *params) +static uint32_t *ais_alloc_buffer(struct image_tool_params *params) { int dfd; struct stat sbuf; @@ -216,7 +216,7 @@ static uint32_t *ais_alloc_buffer(struct mkimage_params *params) return ptr; } -static uint32_t *ais_copy_image(struct mkimage_params *params, +static uint32_t *ais_copy_image(struct image_tool_params *params, uint32_t *aisptr) { @@ -252,7 +252,7 @@ static uint32_t *ais_copy_image(struct mkimage_params *params, } -static int aisimage_generate(struct mkimage_params *params, +static int aisimage_generate(struct image_tool_params *params, struct image_type_params *tparams) { FILE *fd = NULL; @@ -370,7 +370,7 @@ static int aisimage_check_image_types(uint8_t type) } static int aisimage_verify_header(unsigned char *ptr, int image_size, - struct mkimage_params *params) + struct image_tool_params *params) { struct ais_header *ais_hdr = (struct ais_header *)ptr; @@ -384,11 +384,11 @@ static int aisimage_verify_header(unsigned char *ptr, int image_size, } static void aisimage_set_header(void *ptr, struct stat *sbuf, int ifd, - struct mkimage_params *params) + struct image_tool_params *params) { } -int aisimage_check_params(struct mkimage_params *params) +int aisimage_check_params(struct image_tool_params *params) { if (!params) return CFG_INVALID; @@ -427,5 +427,5 @@ static struct image_type_params aisimage_params = { void init_ais_image_type(void) { - mkimage_register(&aisimage_params); + register_image_type(&aisimage_params); } diff --git a/tools/default_image.c b/tools/default_image.c index fd8b9f5..cc790b2 100644 --- a/tools/default_image.c +++ b/tools/default_image.c @@ -14,7 +14,7 @@ * SPDX-License-Identifier: GPL-2.0+ */ -#include "mkimage.h" +#include "imagetool.h" #include <image.h> #include <u-boot/crc.h> @@ -29,7 +29,7 @@ static int image_check_image_types(uint8_t type) return EXIT_FAILURE; } -static int image_check_params(struct mkimage_params *params) +static int image_check_params(struct image_tool_params *params) { return ((params->dflag && (params->fflag || params->lflag)) || (params->fflag && (params->dflag || params->lflag)) || @@ -37,7 +37,7 @@ static int image_check_params(struct mkimage_params *params) } static int image_verify_header(unsigned char *ptr, int image_size, - struct mkimage_params *params) + struct image_tool_params *params) { uint32_t len; const unsigned char *data; @@ -86,7 +86,7 @@ static int image_verify_header(unsigned char *ptr, int image_size, } static void image_set_header(void *ptr, struct stat *sbuf, int ifd, - struct mkimage_params *params) + struct image_tool_params *params) { uint32_t checksum; @@ -133,5 +133,5 @@ static struct image_type_params defimage_params = { void init_default_image_type(void) { - mkimage_register(&defimage_params); + register_image_type(&defimage_params); } diff --git a/tools/fit_image.c b/tools/fit_image.c index 0400a60..1466164 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); } diff --git a/tools/imagetool.c b/tools/imagetool.c new file mode 100644 index 0000000..29d2189 --- /dev/null +++ b/tools/imagetool.c @@ -0,0 +1,58 @@ +/* + * (C) Copyright 2013 + * + * Written by Guilherme Maciel Ferreira <guilherme.maciel.ferreira@gmail.com> + * + * SPDX-License-Identifier: GPL-2.0+ + */ + +#include "imagetool.h" + +/* + * Callback function to register a image type within a tool + */ +static imagetool_register_t register_func; + +/* + * register_image_tool - + * + * The tool provides its own registration function in order to all image + * types initialize themselves. + */ +void register_image_tool(imagetool_register_t image_register) +{ + /* + * Save the image tool callback function. It will be used to register + * image types within that tool + */ + register_func = image_register; + + /* Init Freescale PBL Boot image generation/list support */ + init_pbl_image_type(); + /* Init Kirkwood Boot image generation/list support */ + init_kwb_image_type(); + /* Init Freescale imx Boot image generation/list support */ + init_imx_image_type(); + /* Init Freescale mxs Boot image generation/list support */ + init_mxs_image_type(); + /* Init FIT image generation/list support */ + init_fit_image_type(); + /* Init TI OMAP Boot image generation/list support */ + init_omap_image_type(); + /* Init Default image generation/list support */ + init_default_image_type(); + /* Init Davinci UBL support */ + init_ubl_image_type(); + /* Init Davinci AIS support */ + init_ais_image_type(); +} + +/* + * register_image_type - + * + * Register a image type within a tool + */ +void register_image_type(struct image_type_params *tparams) +{ + register_func(tparams); +} diff --git a/tools/imagetool.h b/tools/imagetool.h new file mode 100644 index 0000000..b8adb61 --- /dev/null +++ b/tools/imagetool.h @@ -0,0 +1,161 @@ +/* + * (C) Copyright 2013 + * + * Written by Guilherme Maciel Ferreira <guilherme.maciel.ferreira@gmail.com> + * + * SPDX-License-Identifier: GPL-2.0+ + */ + +#ifndef _IMAGETOOL_H_ +#define _IMAGETOOL_H_ + +#include "os_support.h" +#include <errno.h> +#include <fcntl.h> +#include <stdio.h> +#include <stdlib.h> +#include <string.h> +#include <sys/stat.h> +#include <time.h> +#include <unistd.h> +#include <sha1.h> +#include "fdt_host.h" + +#define ARRAY_SIZE(x) (sizeof(x) / sizeof((x)[0])) + +#define IH_ARCH_DEFAULT IH_ARCH_INVALID + +/* + * This structure defines all such variables those are initialized by + * mkimage and dumpimage main core and need to be referred by image + * type specific functions + */ +struct image_tool_params { + int dflag; + int eflag; + int fflag; + int lflag; + int vflag; + int xflag; + int skipcpy; + int os; + int arch; + int type; + int comp; + char *dtc; + unsigned int addr; + unsigned int ep; + char *imagename; + char *imagename2; + char *datafile; + char *imagefile; + char *cmdname; + const char *keydir; /* Directory holding private keys */ + const char *keydest; /* Destination .dtb for public key */ + const char *comment; /* Comment to add to signature node */ + int require_keys; /* 1 to mark signing keys as 'required' */ +}; + +/* + * image type specific variables and callback functions + */ +struct image_type_params { + /* name is an identification tag string for added support */ + char *name; + /* + * header size is local to the specific image type to be supported, + * mkimage core treats this as number of bytes + */ + uint32_t header_size; + /* Image type header pointer */ + void *hdr; + /* + * There are several arguments that are passed on the command line + * and are registered as flags in image_tool_params structure. + * This callback function can be used to check the passed arguments + * are in-lined with the image type to be supported + * + * Returns 1 if parameter check is successful + */ + int (*check_params) (struct image_tool_params *); + /* + * This function is used by list command (i.e. mkimage -l <filename>) + * image type verification code must be put here + * + * Returns 0 if image header verification is successful + * otherwise, returns respective negative error codes + */ + int (*verify_header) (unsigned char *, int, struct image_tool_params *); + /* Prints image information abstracting from image header */ + void (*print_header) (const void *); + /* + * The header or image contents need to be set as per image type to + * be generated using this callback function. + * further output file post processing (for ex. checksum calculation, + * padding bytes etc..) can also be done in this callback function. + */ + void (*set_header) (void *, struct stat *, int, + struct image_tool_params *); + /* + * Some image generation support for ex (default image type) supports + * more than one type_ids, this callback function is used to check + * whether input (-T <image_type>) is supported by registered image + * generation/list low level code + */ + int (*check_image_type) (uint8_t); + /* This callback function will be executed if fflag is defined */ + int (*fflag_handle) (struct image_tool_params *); + /* + * This callback function will be executed for variable size record + * It is expected to build this header in memory and return its length + * and a pointer to it by using image_type_params.header_size and + * image_type_params.hdr. The return value shall indicate if an + * additional padding should be used when copying the data image + * by returning the padding length. + */ + int (*vrec_header) (struct image_tool_params *, + struct image_type_params *); + /* pointer to the next registered entry in linked list */ + struct image_type_params *next; +}; + +/* + * Tool registration function. + */ +typedef void (*imagetool_register_t)(struct image_type_params *); + +/* + * Initializes all image types with the given registration callback + * function. + * An image tool uses this function to initialize all image types. + */ +void register_image_tool(imagetool_register_t image_register); + +/* + * Register a image type within a tool. + * An image type uses this function to register itself within + * all tools. + */ +void register_image_type(struct image_type_params *tparams); + +/* + * There is a c file associated with supported image type low level code + * for ex. default_image.c, fit_image.c + * init_xxx_type() is the only function referred by image tool core to avoid + * a single lined header file, you can define them here + * + * Supported image types init functions + */ +void init_default_image_type(void); +void init_pbl_image_type(void); +void init_ais_image_type(void); +void init_kwb_image_type(void); +void init_imx_image_type(void); +void init_mxs_image_type(void); +void init_fit_image_type(void); +void init_ubl_image_type(void); +void init_omap_image_type(void); + +void pbl_load_uboot(int fd, struct image_tool_params *mparams); + +#endif /* _IMAGETOOL_H_ */ diff --git a/tools/imximage.c b/tools/imximage.c index 511e3f2..18dc051 100644 --- a/tools/imximage.c +++ b/tools/imximage.c @@ -9,7 +9,7 @@ * SPDX-License-Identifier: GPL-2.0+ */ -#include "mkimage.h" +#include "imagetool.h" #include <image.h> #include "imximage.h" @@ -520,7 +520,7 @@ static int imximage_check_image_types(uint8_t type) } static int imximage_verify_header(unsigned char *ptr, int image_size, - struct mkimage_params *params) + struct image_tool_params *params) { struct imx_header *imx_hdr = (struct imx_header *) ptr; @@ -549,7 +549,7 @@ static void imximage_print_header(const void *ptr) } static void imximage_set_header(void *ptr, struct stat *sbuf, int ifd, - struct mkimage_params *params) + struct image_tool_params *params) { struct imx_header *imxhdr = (struct imx_header *)ptr; uint32_t dcd_len; @@ -589,7 +589,7 @@ static void imximage_set_header(void *ptr, struct stat *sbuf, int ifd, } } -int imximage_check_params(struct mkimage_params *params) +int imximage_check_params(struct image_tool_params *params) { if (!params) return CFG_INVALID; @@ -611,7 +611,7 @@ int imximage_check_params(struct mkimage_params *params) (params->xflag) || !(strlen(params->imagename)); } -static int imximage_generate(struct mkimage_params *params, +static int imximage_generate(struct image_tool_params *params, struct image_type_params *tparams) { struct imx_header *imxhdr; @@ -701,5 +701,5 @@ static struct image_type_params imximage_params = { void init_imx_image_type(void) { - mkimage_register(&imximage_params); + register_image_type(&imximage_params); } diff --git a/tools/kwbimage.c b/tools/kwbimage.c index 1df6b20..109d616 100644 --- a/tools/kwbimage.c +++ b/tools/kwbimage.c @@ -6,7 +6,7 @@ * SPDX-License-Identifier: GPL-2.0+ */ -#include "mkimage.h" +#include "imagetool.h" #include <image.h> #include "kwbimage.h" @@ -54,7 +54,7 @@ static int lineno = -1; /* * Report Error if xflag is set in addition to default */ -static int kwbimage_check_params (struct mkimage_params *params) +static int kwbimage_check_params(struct image_tool_params *params) { if (!strlen (params->imagename)) { printf ("Error:%s - Configuration file not specified, " @@ -288,7 +288,7 @@ INVL_CMD: } static void kwbimage_set_header (void *ptr, struct stat *sbuf, int ifd, - struct mkimage_params *params) + struct image_tool_params *params) { struct kwb_header *hdr = (struct kwb_header *)ptr; bhr_t *mhdr = &hdr->kwb_hdr; @@ -322,7 +322,7 @@ static void kwbimage_set_header (void *ptr, struct stat *sbuf, int ifd, } static int kwbimage_verify_header (unsigned char *ptr, int image_size, - struct mkimage_params *params) + struct image_tool_params *params) { struct kwb_header *hdr = (struct kwb_header *)ptr; bhr_t *mhdr = &hdr->kwb_hdr; @@ -382,5 +382,5 @@ static struct image_type_params kwbimage_params = { void init_kwb_image_type (void) { - mkimage_register (&kwbimage_params); + register_image_type(&kwbimage_params); } diff --git a/tools/mkimage.c b/tools/mkimage.c index e12bc31..123d0c7 100644 --- a/tools/mkimage.c +++ b/tools/mkimage.c @@ -19,7 +19,7 @@ static void usage(void); struct image_type_params *mkimage_tparams = NULL; /* parameters initialized by core will be used by the image type code */ -struct mkimage_params params = { +struct image_tool_params params = { .os = IH_OS_LINUX, .arch = IH_ARCH_PPC, .type = IH_TYPE_KERNEL, @@ -139,24 +139,8 @@ main (int argc, char **argv) struct image_type_params *tparams = NULL; int pad_len = 0; - /* Init Freescale PBL Boot image generation/list support */ - init_pbl_image_type(); - /* Init Kirkwood Boot image generation/list support */ - init_kwb_image_type (); - /* Init Freescale imx Boot image generation/list support */ - init_imx_image_type (); - /* Init Freescale mxs Boot image generation/list support */ - init_mxs_image_type(); - /* Init FIT image generation/list support */ - init_fit_image_type (); - /* Init TI OMAP Boot image generation/list support */ - init_omap_image_type(); - /* Init Default image generation/list support */ - init_default_image_type (); - /* Init Davinci UBL support */ - init_ubl_image_type(); - /* Init Davinci AIS support */ - init_ais_image_type(); + /* Init all image generation/list support */ + register_image_tool(mkimage_register); params.cmdname = *argv; params.addr = params.ep = 0; diff --git a/tools/mkimage.h b/tools/mkimage.h index af49154..d5491b6 100644 --- a/tools/mkimage.h +++ b/tools/mkimage.h @@ -20,6 +20,7 @@ #include <unistd.h> #include <sha1.h> #include "fdt_host.h" +#include "imagetool.h" #undef MKIMAGE_DEBUG @@ -29,8 +30,6 @@ #define debug(fmt,args...) #endif /* MKIMAGE_DEBUG */ -#define ARRAY_SIZE(x) (sizeof(x) / sizeof((x)[0])) - static inline void *map_sysmem(ulong paddr, unsigned long len) { return (void *)(uintptr_t)paddr; @@ -47,124 +46,4 @@ static inline ulong map_to_sysmem(void *ptr) #define MKIMAGE_MAX_DTC_CMDLINE_LEN 512 #define MKIMAGE_DTC "dtc" /* assume dtc is in $PATH */ -#define IH_ARCH_DEFAULT IH_ARCH_INVALID - -/* - * This structure defines all such variables those are initialized by - * mkimage main core and need to be referred by image type specific - * functions - */ -struct mkimage_params { - int dflag; - int eflag; - int fflag; - int lflag; - int vflag; - int xflag; - int skipcpy; - int os; - int arch; - int type; - int comp; - char *dtc; - unsigned int addr; - unsigned int ep; - char *imagename; - char *imagename2; - char *datafile; - char *imagefile; - char *cmdname; - const char *keydir; /* Directory holding private keys */ - const char *keydest; /* Destination .dtb for public key */ - const char *comment; /* Comment to add to signature node */ - int require_keys; /* 1 to mark signing keys as 'required' */ -}; - -/* - * image type specific variables and callback functions - */ -struct image_type_params { - /* name is an identification tag string for added support */ - char *name; - /* - * header size is local to the specific image type to be supported, - * mkimage core treats this as number of bytes - */ - uint32_t header_size; - /* Image type header pointer */ - void *hdr; - /* - * There are several arguments that are passed on the command line - * and are registered as flags in mkimage_params structure. - * This callback function can be used to check the passed arguments - * are in-lined with the image type to be supported - * - * Returns 1 if parameter check is successful - */ - int (*check_params) (struct mkimage_params *); - /* - * This function is used by list command (i.e. mkimage -l <filename>) - * image type verification code must be put here - * - * Returns 0 if image header verification is successful - * otherwise, returns respective negative error codes - */ - int (*verify_header) (unsigned char *, int, struct mkimage_params *); - /* Prints image information abstracting from image header */ - void (*print_header) (const void *); - /* - * The header or image contents need to be set as per image type to - * be generated using this callback function. - * further output file post processing (for ex. checksum calculation, - * padding bytes etc..) can also be done in this callback function. - */ - void (*set_header) (void *, struct stat *, int, - struct mkimage_params *); - /* - * Some image generation support for ex (default image type) supports - * more than one type_ids, this callback function is used to check - * whether input (-T <image_type>) is supported by registered image - * generation/list low level code - */ - int (*check_image_type) (uint8_t); - /* This callback function will be executed if fflag is defined */ - int (*fflag_handle) (struct mkimage_params *); - /* - * This callback function will be executed for variable size record - * It is expected to build this header in memory and return its length - * and a pointer to it by using image_type_params.header_size and - * image_type_params.hdr. The return value shall indicate if an - * additional padding should be used when copying the data image - * by returning the padding length. - */ - int (*vrec_header) (struct mkimage_params *, - struct image_type_params *); - /* pointer to the next registered entry in linked list */ - struct image_type_params *next; -}; - -/* - * Exported functions - */ -void mkimage_register (struct image_type_params *tparams); - -/* - * There is a c file associated with supported image type low level code - * for ex. default_image.c, fit_image.c - * init is the only function referred by mkimage core. - * to avoid a single lined header file, you can define them here - * - * Supported image types init functions - */ -void pbl_load_uboot(int fd, struct mkimage_params *mparams); -void init_pbl_image_type(void); -void init_ais_image_type(void); -void init_kwb_image_type (void); -void init_imx_image_type (void); -void init_mxs_image_type(void); -void init_default_image_type (void); -void init_fit_image_type (void); -void init_ubl_image_type(void); -void init_omap_image_type(void); - #endif /* _MKIIMAGE_H_ */ diff --git a/tools/mxsimage.c b/tools/mxsimage.c index 5db19b2..b214050 100644 --- a/tools/mxsimage.c +++ b/tools/mxsimage.c @@ -17,7 +17,7 @@ #include <openssl/evp.h> -#include "mkimage.h" +#include "imagetool.h" #include "mxsimage.h" #include <image.h> @@ -2148,11 +2148,11 @@ static int mxsimage_check_image_types(uint8_t type) } static void mxsimage_set_header(void *ptr, struct stat *sbuf, int ifd, - struct mkimage_params *params) + struct image_tool_params *params) { } -int mxsimage_check_params(struct mkimage_params *params) +int mxsimage_check_params(struct image_tool_params *params) { if (!params) return -1; @@ -2193,7 +2193,7 @@ static int mxsimage_verify_print_header(char *file, int silent) char *imagefile; static int mxsimage_verify_header(unsigned char *ptr, int image_size, - struct mkimage_params *params) + struct image_tool_params *params) { struct sb_boot_image_header *hdr; @@ -2291,7 +2291,7 @@ static int sb_build_image(struct sb_image_ctx *ictx, return 0; } -static int mxsimage_generate(struct mkimage_params *params, +static int mxsimage_generate(struct image_tool_params *params, struct image_type_params *tparams) { int ret; @@ -2337,7 +2337,7 @@ static struct image_type_params mxsimage_params = { void init_mxs_image_type(void) { - mkimage_register(&mxsimage_params); + register_image_type(&mxsimage_params); } #else diff --git a/tools/omapimage.c b/tools/omapimage.c index 8774a7e..d59bc4d 100644 --- a/tools/omapimage.c +++ b/tools/omapimage.c @@ -14,7 +14,7 @@ * SPDX-License-Identifier: GPL-2.0+ */ -#include "mkimage.h" +#include "imagetool.h" #include <image.h> #include "omapimage.h" @@ -69,7 +69,7 @@ static int valid_gph_load_addr(uint32_t load_addr) } static int omapimage_verify_header(unsigned char *ptr, int image_size, - struct mkimage_params *params) + struct image_tool_params *params) { struct ch_toc *toc = (struct ch_toc *)ptr; struct gp_header *gph = (struct gp_header *)(ptr+OMAP_CH_HDR_SIZE); @@ -188,7 +188,7 @@ static int toc_offset(void *hdr, void *member) } static void omapimage_set_header(void *ptr, struct stat *sbuf, int ifd, - struct mkimage_params *params) + struct image_tool_params *params) { struct ch_toc *toc = (struct ch_toc *)ptr; struct ch_settings *chs = (struct ch_settings *) @@ -224,7 +224,7 @@ static void omapimage_set_header(void *ptr, struct stat *sbuf, int ifd, } } -int omapimage_check_params(struct mkimage_params *params) +int omapimage_check_params(struct image_tool_params *params) { return (params->dflag && (params->fflag || params->lflag)) || (params->fflag && (params->dflag || params->lflag)) || @@ -247,5 +247,5 @@ static struct image_type_params omapimage_params = { void init_omap_image_type(void) { - mkimage_register(&omapimage_params); + register_image_type(&omapimage_params); } diff --git a/tools/pblimage.c b/tools/pblimage.c index bac5faf..ef3d7f6 100644 --- a/tools/pblimage.c +++ b/tools/pblimage.c @@ -3,7 +3,7 @@ * * SPDX-License-Identifier: GPL-2.0+ */ -#include "mkimage.h" +#include "imagetool.h" #include <image.h> #include "pblimage.h" @@ -242,7 +242,7 @@ static void add_end_cmd(void) } } -void pbl_load_uboot(int ifd, struct mkimage_params *params) +void pbl_load_uboot(int ifd, struct image_tool_params *params) { FILE *fp_uboot; int size; @@ -281,7 +281,7 @@ static int pblimage_check_image_types(uint8_t type) } static int pblimage_verify_header(unsigned char *ptr, int image_size, - struct mkimage_params *params) + struct image_tool_params *params) { struct pbl_header *pbl_hdr = (struct pbl_header *) ptr; @@ -308,7 +308,7 @@ static void pblimage_print_header(const void *ptr) } static void pblimage_set_header(void *ptr, struct stat *sbuf, int ifd, - struct mkimage_params *params) + struct image_tool_params *params) { /*nothing need to do, pbl_load_uboot takes care of whole file. */ } @@ -327,5 +327,5 @@ static struct image_type_params pblimage_params = { void init_pbl_image_type(void) { pbl_size = 0; - mkimage_register(&pblimage_params); + register_image_type(&pblimage_params); } diff --git a/tools/ublimage.c b/tools/ublimage.c index aafe248..cbbbe20 100644 --- a/tools/ublimage.c +++ b/tools/ublimage.c @@ -13,7 +13,7 @@ * SPDX-License-Identifier: GPL-2.0+ */ -#include "mkimage.h" +#include "imagetool.h" #include <image.h> #include "ublimage.h" @@ -193,7 +193,7 @@ static int ublimage_check_image_types(uint8_t type) } static int ublimage_verify_header(unsigned char *ptr, int image_size, - struct mkimage_params *params) + struct image_tool_params *params) { struct ubl_header *ubl_hdr = (struct ubl_header *)ptr; @@ -211,7 +211,7 @@ static void ublimage_print_header(const void *ptr) } static void ublimage_set_header(void *ptr, struct stat *sbuf, int ifd, - struct mkimage_params *params) + struct image_tool_params *params) { struct ubl_header *ublhdr = (struct ubl_header *)ptr; @@ -219,7 +219,7 @@ static void ublimage_set_header(void *ptr, struct stat *sbuf, int ifd, parse_cfg_file(ublhdr, params->imagename); } -int ublimage_check_params(struct mkimage_params *params) +int ublimage_check_params(struct image_tool_params *params) { if (!params) return CFG_INVALID; @@ -257,5 +257,5 @@ static struct image_type_params ublimage_params = { void init_ubl_image_type(void) { - mkimage_register(&ublimage_params); + register_image_type(&ublimage_params); } |