mirror of
https://github.com/brain-hackers/u-boot-brain
synced 2024-09-27 23:20:26 +09:00
checkpatch whitespace cleanups
This avoids the following checkpatch warning in later patches: ERROR: "(foo*)" should be "(foo *)" ERROR: space required before the open brace '{' ERROR: space prohibited before that close parenthesis ')' ERROR: spaces required around that '||' (ctx:WxV) WARNING: space prohibited between function name and open parenthesis '(' WARNING: line over 80 characters This fixes all the white-space warnings/errors in my subsequent patch, and within this current patch. A number of other checkpatch warnings and errors are still present in this patch itself, but are beyond simple whitespace fixes, so are not solved by this patch. v2: New patch Signed-off-by: Stephen Warren <swarren@nvidia.com> Tested-by: Simon Glass <sjg@chromium.org> Tested-by: Simon Glass <sjg@chromium.org>
This commit is contained in:
parent
83c484d7ec
commit
712fbcf384
File diff suppressed because it is too large
Load Diff
@ -62,7 +62,7 @@ do_imgextract(cmd_tbl_t * cmdtp, int flag, int argc, char * const argv[])
|
|||||||
uint unc_len = CONFIG_SYS_XIMG_LEN;
|
uint unc_len = CONFIG_SYS_XIMG_LEN;
|
||||||
uint8_t comp;
|
uint8_t comp;
|
||||||
|
|
||||||
verify = getenv_yesno ("verify");
|
verify = getenv_yesno("verify");
|
||||||
|
|
||||||
if (argc > 1) {
|
if (argc > 1) {
|
||||||
addr = simple_strtoul(argv[1], NULL, 16);
|
addr = simple_strtoul(argv[1], NULL, 16);
|
||||||
@ -77,33 +77,33 @@ do_imgextract(cmd_tbl_t * cmdtp, int flag, int argc, char * const argv[])
|
|||||||
dest = simple_strtoul(argv[3], NULL, 16);
|
dest = simple_strtoul(argv[3], NULL, 16);
|
||||||
}
|
}
|
||||||
|
|
||||||
switch (genimg_get_format ((void *)addr)) {
|
switch (genimg_get_format((void *)addr)) {
|
||||||
case IMAGE_FORMAT_LEGACY:
|
case IMAGE_FORMAT_LEGACY:
|
||||||
|
|
||||||
printf("## Copying part %d from legacy image "
|
printf("## Copying part %d from legacy image "
|
||||||
"at %08lx ...\n", part, addr);
|
"at %08lx ...\n", part, addr);
|
||||||
|
|
||||||
hdr = (image_header_t *)addr;
|
hdr = (image_header_t *)addr;
|
||||||
if (!image_check_magic (hdr)) {
|
if (!image_check_magic(hdr)) {
|
||||||
printf("Bad Magic Number\n");
|
printf("Bad Magic Number\n");
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!image_check_hcrc (hdr)) {
|
if (!image_check_hcrc(hdr)) {
|
||||||
printf("Bad Header Checksum\n");
|
printf("Bad Header Checksum\n");
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
#ifdef DEBUG
|
#ifdef DEBUG
|
||||||
image_print_contents (hdr);
|
image_print_contents(hdr);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
if (!image_check_type (hdr, IH_TYPE_MULTI)) {
|
if (!image_check_type(hdr, IH_TYPE_MULTI)) {
|
||||||
printf("Wrong Image Type for %s command\n",
|
printf("Wrong Image Type for %s command\n",
|
||||||
cmdtp->name);
|
cmdtp->name);
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
comp = image_get_comp (hdr);
|
comp = image_get_comp(hdr);
|
||||||
if ((comp != IH_COMP_NONE) && (argc < 4)) {
|
if ((comp != IH_COMP_NONE) && (argc < 4)) {
|
||||||
printf("Must specify load address for %s command "
|
printf("Must specify load address for %s command "
|
||||||
"with compressed image\n",
|
"with compressed image\n",
|
||||||
@ -113,25 +113,25 @@ do_imgextract(cmd_tbl_t * cmdtp, int flag, int argc, char * const argv[])
|
|||||||
|
|
||||||
if (verify) {
|
if (verify) {
|
||||||
printf(" Verifying Checksum ... ");
|
printf(" Verifying Checksum ... ");
|
||||||
if (!image_check_dcrc (hdr)) {
|
if (!image_check_dcrc(hdr)) {
|
||||||
printf("Bad Data CRC\n");
|
printf("Bad Data CRC\n");
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
printf("OK\n");
|
printf("OK\n");
|
||||||
}
|
}
|
||||||
|
|
||||||
count = image_multi_count (hdr);
|
count = image_multi_count(hdr);
|
||||||
if (part >= count) {
|
if (part >= count) {
|
||||||
printf("Bad Image Part\n");
|
printf("Bad Image Part\n");
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
image_multi_getimg (hdr, part, &data, &len);
|
image_multi_getimg(hdr, part, &data, &len);
|
||||||
break;
|
break;
|
||||||
#if defined(CONFIG_FIT)
|
#if defined(CONFIG_FIT)
|
||||||
case IMAGE_FORMAT_FIT:
|
case IMAGE_FORMAT_FIT:
|
||||||
if (uname == NULL) {
|
if (uname == NULL) {
|
||||||
puts ("No FIT subimage unit name\n");
|
puts("No FIT subimage unit name\n");
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -139,19 +139,19 @@ do_imgextract(cmd_tbl_t * cmdtp, int flag, int argc, char * const argv[])
|
|||||||
"at %08lx ...\n", uname, addr);
|
"at %08lx ...\n", uname, addr);
|
||||||
|
|
||||||
fit_hdr = (const void *)addr;
|
fit_hdr = (const void *)addr;
|
||||||
if (!fit_check_format (fit_hdr)) {
|
if (!fit_check_format(fit_hdr)) {
|
||||||
puts ("Bad FIT image format\n");
|
puts("Bad FIT image format\n");
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* get subimage node offset */
|
/* get subimage node offset */
|
||||||
noffset = fit_image_get_node (fit_hdr, uname);
|
noffset = fit_image_get_node(fit_hdr, uname);
|
||||||
if (noffset < 0) {
|
if (noffset < 0) {
|
||||||
printf ("Can't find '%s' FIT subimage\n", uname);
|
printf("Can't find '%s' FIT subimage\n", uname);
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (fit_image_check_comp (fit_hdr, noffset, IH_COMP_NONE)
|
if (fit_image_check_comp(fit_hdr, noffset, IH_COMP_NONE)
|
||||||
&& (argc < 4)) {
|
&& (argc < 4)) {
|
||||||
printf("Must specify load address for %s command "
|
printf("Must specify load address for %s command "
|
||||||
"with compressed image\n",
|
"with compressed image\n",
|
||||||
@ -161,21 +161,21 @@ do_imgextract(cmd_tbl_t * cmdtp, int flag, int argc, char * const argv[])
|
|||||||
|
|
||||||
/* verify integrity */
|
/* verify integrity */
|
||||||
if (verify) {
|
if (verify) {
|
||||||
if (!fit_image_check_hashes (fit_hdr, noffset)) {
|
if (!fit_image_check_hashes(fit_hdr, noffset)) {
|
||||||
puts ("Bad Data Hash\n");
|
puts("Bad Data Hash\n");
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/* get subimage data address and length */
|
/* get subimage data address and length */
|
||||||
if (fit_image_get_data (fit_hdr, noffset,
|
if (fit_image_get_data(fit_hdr, noffset,
|
||||||
&fit_data, &fit_len)) {
|
&fit_data, &fit_len)) {
|
||||||
puts ("Could not find script subimage data\n");
|
puts("Could not find script subimage data\n");
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (fit_image_get_comp (fit_hdr, noffset, &comp)) {
|
if (fit_image_get_comp(fit_hdr, noffset, &comp)) {
|
||||||
puts ("Could not find script subimage "
|
puts("Could not find script subimage "
|
||||||
"compression type\n");
|
"compression type\n");
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
@ -185,7 +185,7 @@ do_imgextract(cmd_tbl_t * cmdtp, int flag, int argc, char * const argv[])
|
|||||||
break;
|
break;
|
||||||
#endif
|
#endif
|
||||||
default:
|
default:
|
||||||
puts ("Invalid image type for imxtract\n");
|
puts("Invalid image type for imxtract\n");
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -199,28 +199,28 @@ do_imgextract(cmd_tbl_t * cmdtp, int flag, int argc, char * const argv[])
|
|||||||
void *to = (void *) dest;
|
void *to = (void *) dest;
|
||||||
void *from = (void *)data;
|
void *from = (void *)data;
|
||||||
|
|
||||||
printf (" Loading part %d ... ", part);
|
printf(" Loading part %d ... ", part);
|
||||||
|
|
||||||
while (l > 0) {
|
while (l > 0) {
|
||||||
tail = (l > CHUNKSZ) ? CHUNKSZ : l;
|
tail = (l > CHUNKSZ) ? CHUNKSZ : l;
|
||||||
WATCHDOG_RESET();
|
WATCHDOG_RESET();
|
||||||
memmove (to, from, tail);
|
memmove(to, from, tail);
|
||||||
to += tail;
|
to += tail;
|
||||||
from += tail;
|
from += tail;
|
||||||
l -= tail;
|
l -= tail;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
#else /* !(CONFIG_HW_WATCHDOG || CONFIG_WATCHDOG) */
|
#else /* !(CONFIG_HW_WATCHDOG || CONFIG_WATCHDOG) */
|
||||||
printf (" Loading part %d ... ", part);
|
printf(" Loading part %d ... ", part);
|
||||||
memmove ((char *) dest, (char *)data, len);
|
memmove((char *) dest, (char *)data, len);
|
||||||
#endif /* CONFIG_HW_WATCHDOG || CONFIG_WATCHDOG */
|
#endif /* CONFIG_HW_WATCHDOG || CONFIG_WATCHDOG */
|
||||||
break;
|
break;
|
||||||
#ifdef CONFIG_GZIP
|
#ifdef CONFIG_GZIP
|
||||||
case IH_COMP_GZIP:
|
case IH_COMP_GZIP:
|
||||||
printf (" Uncompressing part %d ... ", part);
|
printf(" Uncompressing part %d ... ", part);
|
||||||
if (gunzip ((void *) dest, unc_len,
|
if (gunzip((void *) dest, unc_len,
|
||||||
(uchar *) data, &len) != 0) {
|
(uchar *) data, &len) != 0) {
|
||||||
puts ("GUNZIP ERROR - image not loaded\n");
|
puts("GUNZIP ERROR - image not loaded\n");
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
@ -230,19 +230,19 @@ do_imgextract(cmd_tbl_t * cmdtp, int flag, int argc, char * const argv[])
|
|||||||
{
|
{
|
||||||
int i;
|
int i;
|
||||||
|
|
||||||
printf (" Uncompressing part %d ... ", part);
|
printf(" Uncompressing part %d ... ", part);
|
||||||
/*
|
/*
|
||||||
* If we've got less than 4 MB of malloc()
|
* If we've got less than 4 MB of malloc()
|
||||||
* space, use slower decompression algorithm
|
* space, use slower decompression algorithm
|
||||||
* which requires at most 2300 KB of memory.
|
* which requires at most 2300 KB of memory.
|
||||||
*/
|
*/
|
||||||
i = BZ2_bzBuffToBuffDecompress(
|
i = BZ2_bzBuffToBuffDecompress(
|
||||||
(char*)ntohl(hdr->ih_load),
|
(char *)ntohl(hdr->ih_load),
|
||||||
&unc_len, (char *)data, len,
|
&unc_len, (char *)data, len,
|
||||||
CONFIG_SYS_MALLOC_LEN < (4096 * 1024),
|
CONFIG_SYS_MALLOC_LEN < (4096 * 1024),
|
||||||
0);
|
0);
|
||||||
if (i != BZ_OK) {
|
if (i != BZ_OK) {
|
||||||
printf ("BUNZIP2 ERROR %d - "
|
printf("BUNZIP2 ERROR %d - "
|
||||||
"image not loaded\n", i);
|
"image not loaded\n", i);
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
@ -250,10 +250,10 @@ do_imgextract(cmd_tbl_t * cmdtp, int flag, int argc, char * const argv[])
|
|||||||
break;
|
break;
|
||||||
#endif /* CONFIG_BZIP2 */
|
#endif /* CONFIG_BZIP2 */
|
||||||
default:
|
default:
|
||||||
printf ("Unimplemented compression type %d\n", comp);
|
printf("Unimplemented compression type %d\n", comp);
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
puts ("OK\n");
|
puts("OK\n");
|
||||||
}
|
}
|
||||||
|
|
||||||
sprintf(pbuf, "%8lx", data);
|
sprintf(pbuf, "%8lx", data);
|
||||||
|
1185
common/image.c
1185
common/image.c
File diff suppressed because it is too large
Load Diff
@ -23,45 +23,47 @@
|
|||||||
DECLARE_GLOBAL_DATA_PTR;
|
DECLARE_GLOBAL_DATA_PTR;
|
||||||
|
|
||||||
#if defined(CONFIG_MPC8260) || defined(CONFIG_440EP) || defined(CONFIG_440GR)
|
#if defined(CONFIG_MPC8260) || defined(CONFIG_440EP) || defined(CONFIG_440GR)
|
||||||
void lynxkdi_boot (image_header_t *hdr)
|
void lynxkdi_boot(image_header_t *hdr)
|
||||||
{
|
{
|
||||||
void (*lynxkdi)(void) = (void(*)(void))image_get_ep (hdr);
|
void (*lynxkdi)(void) = (void(*)(void))image_get_ep(hdr);
|
||||||
lynxos_bootparms_t *parms = (lynxos_bootparms_t *)0x0020;
|
lynxos_bootparms_t *parms = (lynxos_bootparms_t *)0x0020;
|
||||||
bd_t *kbd;
|
bd_t *kbd;
|
||||||
u32 *psz = (u32 *)(image_get_load (hdr) + 0x0204);
|
u32 *psz = (u32 *)(image_get_load(hdr) + 0x0204);
|
||||||
|
|
||||||
memset (parms, 0, sizeof(*parms));
|
memset(parms, 0, sizeof(*parms));
|
||||||
kbd = gd->bd;
|
kbd = gd->bd;
|
||||||
parms->clock_ref = kbd->bi_busfreq;
|
parms->clock_ref = kbd->bi_busfreq;
|
||||||
parms->dramsz = kbd->bi_memsize;
|
parms->dramsz = kbd->bi_memsize;
|
||||||
eth_getenv_enetaddr("ethaddr", parms->ethaddr);
|
eth_getenv_enetaddr("ethaddr", parms->ethaddr);
|
||||||
mtspr (SPRN_SPRG2, 0x0020);
|
mtspr(SPRN_SPRG2, 0x0020);
|
||||||
|
|
||||||
/* Do a simple check for Bluecat so we can pass the
|
/* Do a simple check for Bluecat so we can pass the
|
||||||
* kernel command line parameters.
|
* kernel command line parameters.
|
||||||
*/
|
*/
|
||||||
if (le32_to_cpu (*psz) == image_get_data_size (hdr)) { /* FIXME: NOT SURE HERE ! */
|
/* FIXME: NOT SURE HERE ! */
|
||||||
|
if (le32_to_cpu(*psz) == image_get_data_size(hdr)) {
|
||||||
char *args;
|
char *args;
|
||||||
char *cmdline = (char *)(image_get_load (hdr) + 0x020c);
|
char *cmdline = (char *)(image_get_load(hdr) + 0x020c);
|
||||||
int len;
|
int len;
|
||||||
|
|
||||||
printf ("Booting Bluecat KDI ...\n");
|
printf("Booting Bluecat KDI ...\n");
|
||||||
udelay (200*1000); /* Allow serial port to flush */
|
udelay(200*1000); /* Allow serial port to flush */
|
||||||
if ((args = getenv ("bootargs")) == NULL)
|
if ((args = getenv("bootargs")) == NULL)
|
||||||
args = "";
|
args = "";
|
||||||
/* Prepend the cmdline */
|
/* Prepend the cmdline */
|
||||||
len = strlen (args);
|
len = strlen(args);
|
||||||
if (len && (len + strlen (cmdline) + 2 < (0x0400 - 0x020c))) {
|
if (len && (len + strlen(cmdline) + 2 < (0x0400 - 0x020c))) {
|
||||||
memmove (cmdline + strlen (args) + 1, cmdline, strlen (cmdline));
|
memmove(cmdline + strlen(args) + 1, cmdline,
|
||||||
strcpy (cmdline, args);
|
strlen(cmdline));
|
||||||
|
strcpy(cmdline, args);
|
||||||
cmdline[len] = ' ';
|
cmdline[len] = ' ';
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
printf ("Booting LynxOS KDI ...\n");
|
printf("Booting LynxOS KDI ...\n");
|
||||||
}
|
}
|
||||||
|
|
||||||
lynxkdi ();
|
lynxkdi();
|
||||||
}
|
}
|
||||||
#else
|
#else
|
||||||
#error "Lynx KDI support not implemented for configured CPU"
|
#error "Lynx KDI support not implemented for configured CPU"
|
||||||
|
228
include/image.h
228
include/image.h
@ -313,15 +313,15 @@ int get_table_entry_id(const table_entry_t *table,
|
|||||||
*/
|
*/
|
||||||
char *get_table_entry_name(const table_entry_t *table, char *msg, int id);
|
char *get_table_entry_name(const table_entry_t *table, char *msg, int id);
|
||||||
|
|
||||||
const char *genimg_get_os_name (uint8_t os);
|
const char *genimg_get_os_name(uint8_t os);
|
||||||
const char *genimg_get_arch_name (uint8_t arch);
|
const char *genimg_get_arch_name(uint8_t arch);
|
||||||
const char *genimg_get_type_name (uint8_t type);
|
const char *genimg_get_type_name(uint8_t type);
|
||||||
const char *genimg_get_comp_name (uint8_t comp);
|
const char *genimg_get_comp_name(uint8_t comp);
|
||||||
int genimg_get_os_id (const char *name);
|
int genimg_get_os_id(const char *name);
|
||||||
int genimg_get_arch_id (const char *name);
|
int genimg_get_arch_id(const char *name);
|
||||||
int genimg_get_type_id (const char *name);
|
int genimg_get_type_id(const char *name);
|
||||||
int genimg_get_comp_id (const char *name);
|
int genimg_get_comp_id(const char *name);
|
||||||
void genimg_print_size (uint32_t size);
|
void genimg_print_size(uint32_t size);
|
||||||
|
|
||||||
#ifndef USE_HOSTCC
|
#ifndef USE_HOSTCC
|
||||||
/* Image format types, returned by _get_format() routine */
|
/* Image format types, returned by _get_format() routine */
|
||||||
@ -329,72 +329,72 @@ void genimg_print_size (uint32_t size);
|
|||||||
#define IMAGE_FORMAT_LEGACY 0x01 /* legacy image_header based format */
|
#define IMAGE_FORMAT_LEGACY 0x01 /* legacy image_header based format */
|
||||||
#define IMAGE_FORMAT_FIT 0x02 /* new, libfdt based format */
|
#define IMAGE_FORMAT_FIT 0x02 /* new, libfdt based format */
|
||||||
|
|
||||||
int genimg_get_format (void *img_addr);
|
int genimg_get_format(void *img_addr);
|
||||||
int genimg_has_config (bootm_headers_t *images);
|
int genimg_has_config(bootm_headers_t *images);
|
||||||
ulong genimg_get_image (ulong img_addr);
|
ulong genimg_get_image(ulong img_addr);
|
||||||
|
|
||||||
int boot_get_ramdisk (int argc, char * const argv[], bootm_headers_t *images,
|
int boot_get_ramdisk(int argc, char * const argv[], bootm_headers_t *images,
|
||||||
uint8_t arch, ulong *rd_start, ulong *rd_end);
|
uint8_t arch, ulong *rd_start, ulong *rd_end);
|
||||||
|
|
||||||
|
|
||||||
#ifdef CONFIG_OF_LIBFDT
|
#ifdef CONFIG_OF_LIBFDT
|
||||||
int boot_get_fdt (int flag, int argc, char * const argv[], bootm_headers_t *images,
|
int boot_get_fdt(int flag, int argc, char * const argv[],
|
||||||
char **of_flat_tree, ulong *of_size);
|
bootm_headers_t *images, char **of_flat_tree, ulong *of_size);
|
||||||
void boot_fdt_add_mem_rsv_regions(struct lmb *lmb, void *fdt_blob);
|
void boot_fdt_add_mem_rsv_regions(struct lmb *lmb, void *fdt_blob);
|
||||||
int boot_relocate_fdt (struct lmb *lmb, char **of_flat_tree, ulong *of_size);
|
int boot_relocate_fdt(struct lmb *lmb, char **of_flat_tree, ulong *of_size);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifdef CONFIG_SYS_BOOT_RAMDISK_HIGH
|
#ifdef CONFIG_SYS_BOOT_RAMDISK_HIGH
|
||||||
int boot_ramdisk_high (struct lmb *lmb, ulong rd_data, ulong rd_len,
|
int boot_ramdisk_high(struct lmb *lmb, ulong rd_data, ulong rd_len,
|
||||||
ulong *initrd_start, ulong *initrd_end);
|
ulong *initrd_start, ulong *initrd_end);
|
||||||
#endif /* CONFIG_SYS_BOOT_RAMDISK_HIGH */
|
#endif /* CONFIG_SYS_BOOT_RAMDISK_HIGH */
|
||||||
#ifdef CONFIG_SYS_BOOT_GET_CMDLINE
|
#ifdef CONFIG_SYS_BOOT_GET_CMDLINE
|
||||||
int boot_get_cmdline (struct lmb *lmb, ulong *cmd_start, ulong *cmd_end);
|
int boot_get_cmdline(struct lmb *lmb, ulong *cmd_start, ulong *cmd_end);
|
||||||
#endif /* CONFIG_SYS_BOOT_GET_CMDLINE */
|
#endif /* CONFIG_SYS_BOOT_GET_CMDLINE */
|
||||||
#ifdef CONFIG_SYS_BOOT_GET_KBD
|
#ifdef CONFIG_SYS_BOOT_GET_KBD
|
||||||
int boot_get_kbd (struct lmb *lmb, bd_t **kbd);
|
int boot_get_kbd(struct lmb *lmb, bd_t **kbd);
|
||||||
#endif /* CONFIG_SYS_BOOT_GET_KBD */
|
#endif /* CONFIG_SYS_BOOT_GET_KBD */
|
||||||
#endif /* !USE_HOSTCC */
|
#endif /* !USE_HOSTCC */
|
||||||
|
|
||||||
/*******************************************************************/
|
/*******************************************************************/
|
||||||
/* Legacy format specific code (prefixed with image_) */
|
/* Legacy format specific code (prefixed with image_) */
|
||||||
/*******************************************************************/
|
/*******************************************************************/
|
||||||
static inline uint32_t image_get_header_size (void)
|
static inline uint32_t image_get_header_size(void)
|
||||||
{
|
{
|
||||||
return (sizeof (image_header_t));
|
return (sizeof(image_header_t));
|
||||||
}
|
}
|
||||||
|
|
||||||
#define image_get_hdr_l(f) \
|
#define image_get_hdr_l(f) \
|
||||||
static inline uint32_t image_get_##f(const image_header_t *hdr) \
|
static inline uint32_t image_get_##f(const image_header_t *hdr) \
|
||||||
{ \
|
{ \
|
||||||
return uimage_to_cpu (hdr->ih_##f); \
|
return uimage_to_cpu(hdr->ih_##f); \
|
||||||
}
|
}
|
||||||
image_get_hdr_l (magic) /* image_get_magic */
|
image_get_hdr_l(magic) /* image_get_magic */
|
||||||
image_get_hdr_l (hcrc) /* image_get_hcrc */
|
image_get_hdr_l(hcrc) /* image_get_hcrc */
|
||||||
image_get_hdr_l (time) /* image_get_time */
|
image_get_hdr_l(time) /* image_get_time */
|
||||||
image_get_hdr_l (size) /* image_get_size */
|
image_get_hdr_l(size) /* image_get_size */
|
||||||
image_get_hdr_l (load) /* image_get_load */
|
image_get_hdr_l(load) /* image_get_load */
|
||||||
image_get_hdr_l (ep) /* image_get_ep */
|
image_get_hdr_l(ep) /* image_get_ep */
|
||||||
image_get_hdr_l (dcrc) /* image_get_dcrc */
|
image_get_hdr_l(dcrc) /* image_get_dcrc */
|
||||||
|
|
||||||
#define image_get_hdr_b(f) \
|
#define image_get_hdr_b(f) \
|
||||||
static inline uint8_t image_get_##f(const image_header_t *hdr) \
|
static inline uint8_t image_get_##f(const image_header_t *hdr) \
|
||||||
{ \
|
{ \
|
||||||
return hdr->ih_##f; \
|
return hdr->ih_##f; \
|
||||||
}
|
}
|
||||||
image_get_hdr_b (os) /* image_get_os */
|
image_get_hdr_b(os) /* image_get_os */
|
||||||
image_get_hdr_b (arch) /* image_get_arch */
|
image_get_hdr_b(arch) /* image_get_arch */
|
||||||
image_get_hdr_b (type) /* image_get_type */
|
image_get_hdr_b(type) /* image_get_type */
|
||||||
image_get_hdr_b (comp) /* image_get_comp */
|
image_get_hdr_b(comp) /* image_get_comp */
|
||||||
|
|
||||||
static inline char *image_get_name (const image_header_t *hdr)
|
static inline char *image_get_name(const image_header_t *hdr)
|
||||||
{
|
{
|
||||||
return (char *)hdr->ih_name;
|
return (char *)hdr->ih_name;
|
||||||
}
|
}
|
||||||
|
|
||||||
static inline uint32_t image_get_data_size (const image_header_t *hdr)
|
static inline uint32_t image_get_data_size(const image_header_t *hdr)
|
||||||
{
|
{
|
||||||
return image_get_size (hdr);
|
return image_get_size(hdr);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -408,83 +408,83 @@ static inline uint32_t image_get_data_size (const image_header_t *hdr)
|
|||||||
* returns:
|
* returns:
|
||||||
* image payload data start address
|
* image payload data start address
|
||||||
*/
|
*/
|
||||||
static inline ulong image_get_data (const image_header_t *hdr)
|
static inline ulong image_get_data(const image_header_t *hdr)
|
||||||
{
|
{
|
||||||
return ((ulong)hdr + image_get_header_size ());
|
return ((ulong)hdr + image_get_header_size());
|
||||||
}
|
}
|
||||||
|
|
||||||
static inline uint32_t image_get_image_size (const image_header_t *hdr)
|
static inline uint32_t image_get_image_size(const image_header_t *hdr)
|
||||||
{
|
{
|
||||||
return (image_get_size (hdr) + image_get_header_size ());
|
return (image_get_size(hdr) + image_get_header_size());
|
||||||
}
|
}
|
||||||
static inline ulong image_get_image_end (const image_header_t *hdr)
|
static inline ulong image_get_image_end(const image_header_t *hdr)
|
||||||
{
|
{
|
||||||
return ((ulong)hdr + image_get_image_size (hdr));
|
return ((ulong)hdr + image_get_image_size(hdr));
|
||||||
}
|
}
|
||||||
|
|
||||||
#define image_set_hdr_l(f) \
|
#define image_set_hdr_l(f) \
|
||||||
static inline void image_set_##f(image_header_t *hdr, uint32_t val) \
|
static inline void image_set_##f(image_header_t *hdr, uint32_t val) \
|
||||||
{ \
|
{ \
|
||||||
hdr->ih_##f = cpu_to_uimage (val); \
|
hdr->ih_##f = cpu_to_uimage(val); \
|
||||||
}
|
}
|
||||||
image_set_hdr_l (magic) /* image_set_magic */
|
image_set_hdr_l(magic) /* image_set_magic */
|
||||||
image_set_hdr_l (hcrc) /* image_set_hcrc */
|
image_set_hdr_l(hcrc) /* image_set_hcrc */
|
||||||
image_set_hdr_l (time) /* image_set_time */
|
image_set_hdr_l(time) /* image_set_time */
|
||||||
image_set_hdr_l (size) /* image_set_size */
|
image_set_hdr_l(size) /* image_set_size */
|
||||||
image_set_hdr_l (load) /* image_set_load */
|
image_set_hdr_l(load) /* image_set_load */
|
||||||
image_set_hdr_l (ep) /* image_set_ep */
|
image_set_hdr_l(ep) /* image_set_ep */
|
||||||
image_set_hdr_l (dcrc) /* image_set_dcrc */
|
image_set_hdr_l(dcrc) /* image_set_dcrc */
|
||||||
|
|
||||||
#define image_set_hdr_b(f) \
|
#define image_set_hdr_b(f) \
|
||||||
static inline void image_set_##f(image_header_t *hdr, uint8_t val) \
|
static inline void image_set_##f(image_header_t *hdr, uint8_t val) \
|
||||||
{ \
|
{ \
|
||||||
hdr->ih_##f = val; \
|
hdr->ih_##f = val; \
|
||||||
}
|
}
|
||||||
image_set_hdr_b (os) /* image_set_os */
|
image_set_hdr_b(os) /* image_set_os */
|
||||||
image_set_hdr_b (arch) /* image_set_arch */
|
image_set_hdr_b(arch) /* image_set_arch */
|
||||||
image_set_hdr_b (type) /* image_set_type */
|
image_set_hdr_b(type) /* image_set_type */
|
||||||
image_set_hdr_b (comp) /* image_set_comp */
|
image_set_hdr_b(comp) /* image_set_comp */
|
||||||
|
|
||||||
static inline void image_set_name (image_header_t *hdr, const char *name)
|
static inline void image_set_name(image_header_t *hdr, const char *name)
|
||||||
{
|
{
|
||||||
strncpy (image_get_name (hdr), name, IH_NMLEN);
|
strncpy(image_get_name(hdr), name, IH_NMLEN);
|
||||||
}
|
}
|
||||||
|
|
||||||
int image_check_hcrc (const image_header_t *hdr);
|
int image_check_hcrc(const image_header_t *hdr);
|
||||||
int image_check_dcrc (const image_header_t *hdr);
|
int image_check_dcrc(const image_header_t *hdr);
|
||||||
#ifndef USE_HOSTCC
|
#ifndef USE_HOSTCC
|
||||||
int getenv_yesno (char *var);
|
int getenv_yesno(char *var);
|
||||||
ulong getenv_bootm_low(void);
|
ulong getenv_bootm_low(void);
|
||||||
phys_size_t getenv_bootm_size(void);
|
phys_size_t getenv_bootm_size(void);
|
||||||
phys_size_t getenv_bootm_mapsize(void);
|
phys_size_t getenv_bootm_mapsize(void);
|
||||||
void memmove_wd (void *to, void *from, size_t len, ulong chunksz);
|
void memmove_wd(void *to, void *from, size_t len, ulong chunksz);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
static inline int image_check_magic (const image_header_t *hdr)
|
static inline int image_check_magic(const image_header_t *hdr)
|
||||||
{
|
{
|
||||||
return (image_get_magic (hdr) == IH_MAGIC);
|
return (image_get_magic(hdr) == IH_MAGIC);
|
||||||
}
|
}
|
||||||
static inline int image_check_type (const image_header_t *hdr, uint8_t type)
|
static inline int image_check_type(const image_header_t *hdr, uint8_t type)
|
||||||
{
|
{
|
||||||
return (image_get_type (hdr) == type);
|
return (image_get_type(hdr) == type);
|
||||||
}
|
}
|
||||||
static inline int image_check_arch (const image_header_t *hdr, uint8_t arch)
|
static inline int image_check_arch(const image_header_t *hdr, uint8_t arch)
|
||||||
{
|
{
|
||||||
return (image_get_arch (hdr) == arch);
|
return (image_get_arch(hdr) == arch);
|
||||||
}
|
}
|
||||||
static inline int image_check_os (const image_header_t *hdr, uint8_t os)
|
static inline int image_check_os(const image_header_t *hdr, uint8_t os)
|
||||||
{
|
{
|
||||||
return (image_get_os (hdr) == os);
|
return (image_get_os(hdr) == os);
|
||||||
}
|
}
|
||||||
|
|
||||||
ulong image_multi_count (const image_header_t *hdr);
|
ulong image_multi_count(const image_header_t *hdr);
|
||||||
void image_multi_getimg (const image_header_t *hdr, ulong idx,
|
void image_multi_getimg(const image_header_t *hdr, ulong idx,
|
||||||
ulong *data, ulong *len);
|
ulong *data, ulong *len);
|
||||||
|
|
||||||
void image_print_contents (const void *hdr);
|
void image_print_contents(const void *hdr);
|
||||||
|
|
||||||
#ifndef USE_HOSTCC
|
#ifndef USE_HOSTCC
|
||||||
static inline int image_check_target_arch (const image_header_t *hdr)
|
static inline int image_check_target_arch(const image_header_t *hdr)
|
||||||
{
|
{
|
||||||
#ifndef IH_ARCH_DEFAULT
|
#ifndef IH_ARCH_DEFAULT
|
||||||
# error "please define IH_ARCH_DEFAULT in your arch asm/u-boot.h"
|
# error "please define IH_ARCH_DEFAULT in your arch asm/u-boot.h"
|
||||||
@ -526,14 +526,14 @@ static inline int image_check_target_arch (const image_header_t *hdr)
|
|||||||
#define FIT_MAX_HASH_LEN 20 /* max(crc32_len(4), sha1_len(20)) */
|
#define FIT_MAX_HASH_LEN 20 /* max(crc32_len(4), sha1_len(20)) */
|
||||||
|
|
||||||
/* cmdline argument format parsing */
|
/* cmdline argument format parsing */
|
||||||
inline int fit_parse_conf (const char *spec, ulong addr_curr,
|
inline int fit_parse_conf(const char *spec, ulong addr_curr,
|
||||||
ulong *addr, const char **conf_name);
|
ulong *addr, const char **conf_name);
|
||||||
inline int fit_parse_subimage (const char *spec, ulong addr_curr,
|
inline int fit_parse_subimage(const char *spec, ulong addr_curr,
|
||||||
ulong *addr, const char **image_name);
|
ulong *addr, const char **image_name);
|
||||||
|
|
||||||
void fit_print_contents (const void *fit);
|
void fit_print_contents(const void *fit);
|
||||||
void fit_image_print (const void *fit, int noffset, const char *p);
|
void fit_image_print(const void *fit, int noffset, const char *p);
|
||||||
void fit_image_print_hash (const void *fit, int noffset, const char *p);
|
void fit_image_print_hash(const void *fit, int noffset, const char *p);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* fit_get_end - get FIT image size
|
* fit_get_end - get FIT image size
|
||||||
@ -542,9 +542,9 @@ void fit_image_print_hash (const void *fit, int noffset, const char *p);
|
|||||||
* returns:
|
* returns:
|
||||||
* size of the FIT image (blob) in memory
|
* size of the FIT image (blob) in memory
|
||||||
*/
|
*/
|
||||||
static inline ulong fit_get_size (const void *fit)
|
static inline ulong fit_get_size(const void *fit)
|
||||||
{
|
{
|
||||||
return fdt_totalsize (fit);
|
return fdt_totalsize(fit);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -554,9 +554,9 @@ static inline ulong fit_get_size (const void *fit)
|
|||||||
* returns:
|
* returns:
|
||||||
* end address of the FIT image (blob) in memory
|
* end address of the FIT image (blob) in memory
|
||||||
*/
|
*/
|
||||||
static inline ulong fit_get_end (const void *fit)
|
static inline ulong fit_get_end(const void *fit)
|
||||||
{
|
{
|
||||||
return (ulong)fit + fdt_totalsize (fit);
|
return (ulong)fit + fdt_totalsize(fit);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -567,63 +567,63 @@ static inline ulong fit_get_end (const void *fit)
|
|||||||
* NULL, on error
|
* NULL, on error
|
||||||
* pointer to node name, on success
|
* pointer to node name, on success
|
||||||
*/
|
*/
|
||||||
static inline const char *fit_get_name (const void *fit_hdr,
|
static inline const char *fit_get_name(const void *fit_hdr,
|
||||||
int noffset, int *len)
|
int noffset, int *len)
|
||||||
{
|
{
|
||||||
return fdt_get_name (fit_hdr, noffset, len);
|
return fdt_get_name(fit_hdr, noffset, len);
|
||||||
}
|
}
|
||||||
|
|
||||||
int fit_get_desc (const void *fit, int noffset, char **desc);
|
int fit_get_desc(const void *fit, int noffset, char **desc);
|
||||||
int fit_get_timestamp (const void *fit, int noffset, time_t *timestamp);
|
int fit_get_timestamp(const void *fit, int noffset, time_t *timestamp);
|
||||||
|
|
||||||
int fit_image_get_node (const void *fit, const char *image_uname);
|
int fit_image_get_node(const void *fit, const char *image_uname);
|
||||||
int fit_image_get_os (const void *fit, int noffset, uint8_t *os);
|
int fit_image_get_os(const void *fit, int noffset, uint8_t *os);
|
||||||
int fit_image_get_arch (const void *fit, int noffset, uint8_t *arch);
|
int fit_image_get_arch(const void *fit, int noffset, uint8_t *arch);
|
||||||
int fit_image_get_type (const void *fit, int noffset, uint8_t *type);
|
int fit_image_get_type(const void *fit, int noffset, uint8_t *type);
|
||||||
int fit_image_get_comp (const void *fit, int noffset, uint8_t *comp);
|
int fit_image_get_comp(const void *fit, int noffset, uint8_t *comp);
|
||||||
int fit_image_get_load (const void *fit, int noffset, ulong *load);
|
int fit_image_get_load(const void *fit, int noffset, ulong *load);
|
||||||
int fit_image_get_entry (const void *fit, int noffset, ulong *entry);
|
int fit_image_get_entry(const void *fit, int noffset, ulong *entry);
|
||||||
int fit_image_get_data (const void *fit, int noffset,
|
int fit_image_get_data(const void *fit, int noffset,
|
||||||
const void **data, size_t *size);
|
const void **data, size_t *size);
|
||||||
|
|
||||||
int fit_image_hash_get_algo (const void *fit, int noffset, char **algo);
|
int fit_image_hash_get_algo(const void *fit, int noffset, char **algo);
|
||||||
int fit_image_hash_get_value (const void *fit, int noffset, uint8_t **value,
|
int fit_image_hash_get_value(const void *fit, int noffset, uint8_t **value,
|
||||||
int *value_len);
|
int *value_len);
|
||||||
|
|
||||||
int fit_set_timestamp (void *fit, int noffset, time_t timestamp);
|
int fit_set_timestamp(void *fit, int noffset, time_t timestamp);
|
||||||
int fit_set_hashes (void *fit);
|
int fit_set_hashes(void *fit);
|
||||||
int fit_image_set_hashes (void *fit, int image_noffset);
|
int fit_image_set_hashes(void *fit, int image_noffset);
|
||||||
int fit_image_hash_set_value (void *fit, int noffset, uint8_t *value,
|
int fit_image_hash_set_value(void *fit, int noffset, uint8_t *value,
|
||||||
int value_len);
|
int value_len);
|
||||||
|
|
||||||
int fit_image_check_hashes (const void *fit, int noffset);
|
int fit_image_check_hashes(const void *fit, int noffset);
|
||||||
int fit_all_image_check_hashes (const void *fit);
|
int fit_all_image_check_hashes(const void *fit);
|
||||||
int fit_image_check_os (const void *fit, int noffset, uint8_t os);
|
int fit_image_check_os(const void *fit, int noffset, uint8_t os);
|
||||||
int fit_image_check_arch (const void *fit, int noffset, uint8_t arch);
|
int fit_image_check_arch(const void *fit, int noffset, uint8_t arch);
|
||||||
int fit_image_check_type (const void *fit, int noffset, uint8_t type);
|
int fit_image_check_type(const void *fit, int noffset, uint8_t type);
|
||||||
int fit_image_check_comp (const void *fit, int noffset, uint8_t comp);
|
int fit_image_check_comp(const void *fit, int noffset, uint8_t comp);
|
||||||
int fit_check_format (const void *fit);
|
int fit_check_format(const void *fit);
|
||||||
|
|
||||||
int fit_conf_get_node (const void *fit, const char *conf_uname);
|
int fit_conf_get_node(const void *fit, const char *conf_uname);
|
||||||
int fit_conf_get_kernel_node (const void *fit, int noffset);
|
int fit_conf_get_kernel_node(const void *fit, int noffset);
|
||||||
int fit_conf_get_ramdisk_node (const void *fit, int noffset);
|
int fit_conf_get_ramdisk_node(const void *fit, int noffset);
|
||||||
int fit_conf_get_fdt_node (const void *fit, int noffset);
|
int fit_conf_get_fdt_node(const void *fit, int noffset);
|
||||||
|
|
||||||
void fit_conf_print (const void *fit, int noffset, const char *p);
|
void fit_conf_print(const void *fit, int noffset, const char *p);
|
||||||
|
|
||||||
#ifndef USE_HOSTCC
|
#ifndef USE_HOSTCC
|
||||||
static inline int fit_image_check_target_arch (const void *fdt, int node)
|
static inline int fit_image_check_target_arch(const void *fdt, int node)
|
||||||
{
|
{
|
||||||
return !fit_image_check_arch(fdt, node, IH_ARCH_DEFAULT);
|
return !fit_image_check_arch(fdt, node, IH_ARCH_DEFAULT);
|
||||||
}
|
}
|
||||||
#endif /* USE_HOSTCC */
|
#endif /* USE_HOSTCC */
|
||||||
|
|
||||||
#ifdef CONFIG_FIT_VERBOSE
|
#ifdef CONFIG_FIT_VERBOSE
|
||||||
#define fit_unsupported(msg) printf ("! %s:%d " \
|
#define fit_unsupported(msg) printf("! %s:%d " \
|
||||||
"FIT images not supported for '%s'\n", \
|
"FIT images not supported for '%s'\n", \
|
||||||
__FILE__, __LINE__, (msg))
|
__FILE__, __LINE__, (msg))
|
||||||
|
|
||||||
#define fit_unsupported_reset(msg) printf ("! %s:%d " \
|
#define fit_unsupported_reset(msg) printf("! %s:%d " \
|
||||||
"FIT images not supported for '%s' " \
|
"FIT images not supported for '%s' " \
|
||||||
"- must reset board to recover!\n", \
|
"- must reset board to recover!\n", \
|
||||||
__FILE__, __LINE__, (msg))
|
__FILE__, __LINE__, (msg))
|
||||||
|
@ -33,7 +33,7 @@
|
|||||||
|
|
||||||
static image_header_t header;
|
static image_header_t header;
|
||||||
|
|
||||||
static int image_check_image_types (uint8_t type)
|
static int image_check_image_types(uint8_t type)
|
||||||
{
|
{
|
||||||
if ((type > IH_TYPE_INVALID) && (type < IH_TYPE_FLATDT))
|
if ((type > IH_TYPE_INVALID) && (type < IH_TYPE_FLATDT))
|
||||||
return EXIT_SUCCESS;
|
return EXIT_SUCCESS;
|
||||||
@ -41,14 +41,14 @@ static int image_check_image_types (uint8_t type)
|
|||||||
return EXIT_FAILURE;
|
return EXIT_FAILURE;
|
||||||
}
|
}
|
||||||
|
|
||||||
static int image_check_params (struct mkimage_params *params)
|
static int image_check_params(struct mkimage_params *params)
|
||||||
{
|
{
|
||||||
return ((params->dflag && (params->fflag || params->lflag)) ||
|
return ((params->dflag && (params->fflag || params->lflag)) ||
|
||||||
(params->fflag && (params->dflag || params->lflag)) ||
|
(params->fflag && (params->dflag || params->lflag)) ||
|
||||||
(params->lflag && (params->dflag || params->fflag)));
|
(params->lflag && (params->dflag || params->fflag)));
|
||||||
}
|
}
|
||||||
|
|
||||||
static int image_verify_header (unsigned char *ptr, int image_size,
|
static int image_verify_header(unsigned char *ptr, int image_size,
|
||||||
struct mkimage_params *params)
|
struct mkimage_params *params)
|
||||||
{
|
{
|
||||||
uint32_t len;
|
uint32_t len;
|
||||||
@ -62,10 +62,10 @@ static int image_verify_header (unsigned char *ptr, int image_size,
|
|||||||
* checksum field for checking - this can't be done
|
* checksum field for checking - this can't be done
|
||||||
* on the PROT_READ mapped data.
|
* on the PROT_READ mapped data.
|
||||||
*/
|
*/
|
||||||
memcpy (hdr, ptr, sizeof(image_header_t));
|
memcpy(hdr, ptr, sizeof(image_header_t));
|
||||||
|
|
||||||
if (be32_to_cpu(hdr->ih_magic) != IH_MAGIC) {
|
if (be32_to_cpu(hdr->ih_magic) != IH_MAGIC) {
|
||||||
fprintf (stderr,
|
fprintf(stderr,
|
||||||
"%s: Bad Magic Number: \"%s\" is no valid image\n",
|
"%s: Bad Magic Number: \"%s\" is no valid image\n",
|
||||||
params->cmdname, params->imagefile);
|
params->cmdname, params->imagefile);
|
||||||
return -FDT_ERR_BADMAGIC;
|
return -FDT_ERR_BADMAGIC;
|
||||||
@ -77,8 +77,8 @@ static int image_verify_header (unsigned char *ptr, int image_size,
|
|||||||
checksum = be32_to_cpu(hdr->ih_hcrc);
|
checksum = be32_to_cpu(hdr->ih_hcrc);
|
||||||
hdr->ih_hcrc = cpu_to_be32(0); /* clear for re-calculation */
|
hdr->ih_hcrc = cpu_to_be32(0); /* clear for re-calculation */
|
||||||
|
|
||||||
if (crc32 (0, data, len) != checksum) {
|
if (crc32(0, data, len) != checksum) {
|
||||||
fprintf (stderr,
|
fprintf(stderr,
|
||||||
"%s: ERROR: \"%s\" has bad header checksum!\n",
|
"%s: ERROR: \"%s\" has bad header checksum!\n",
|
||||||
params->cmdname, params->imagefile);
|
params->cmdname, params->imagefile);
|
||||||
return -FDT_ERR_BADSTATE;
|
return -FDT_ERR_BADSTATE;
|
||||||
@ -88,8 +88,8 @@ static int image_verify_header (unsigned char *ptr, int image_size,
|
|||||||
len = image_size - sizeof(image_header_t) ;
|
len = image_size - sizeof(image_header_t) ;
|
||||||
|
|
||||||
checksum = be32_to_cpu(hdr->ih_dcrc);
|
checksum = be32_to_cpu(hdr->ih_dcrc);
|
||||||
if (crc32 (0, data, len) != checksum) {
|
if (crc32(0, data, len) != checksum) {
|
||||||
fprintf (stderr,
|
fprintf(stderr,
|
||||||
"%s: ERROR: \"%s\" has corrupted data!\n",
|
"%s: ERROR: \"%s\" has corrupted data!\n",
|
||||||
params->cmdname, params->imagefile);
|
params->cmdname, params->imagefile);
|
||||||
return -FDT_ERR_BADSTRUCTURE;
|
return -FDT_ERR_BADSTRUCTURE;
|
||||||
@ -97,36 +97,36 @@ static int image_verify_header (unsigned char *ptr, int image_size,
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
static void image_set_header (void *ptr, struct stat *sbuf, int ifd,
|
static void image_set_header(void *ptr, struct stat *sbuf, int ifd,
|
||||||
struct mkimage_params *params)
|
struct mkimage_params *params)
|
||||||
{
|
{
|
||||||
uint32_t checksum;
|
uint32_t checksum;
|
||||||
|
|
||||||
image_header_t * hdr = (image_header_t *)ptr;
|
image_header_t * hdr = (image_header_t *)ptr;
|
||||||
|
|
||||||
checksum = crc32 (0,
|
checksum = crc32(0,
|
||||||
(const unsigned char *)(ptr +
|
(const unsigned char *)(ptr +
|
||||||
sizeof(image_header_t)),
|
sizeof(image_header_t)),
|
||||||
sbuf->st_size - sizeof(image_header_t));
|
sbuf->st_size - sizeof(image_header_t));
|
||||||
|
|
||||||
/* Build new header */
|
/* Build new header */
|
||||||
image_set_magic (hdr, IH_MAGIC);
|
image_set_magic(hdr, IH_MAGIC);
|
||||||
image_set_time (hdr, sbuf->st_mtime);
|
image_set_time(hdr, sbuf->st_mtime);
|
||||||
image_set_size (hdr, sbuf->st_size - sizeof(image_header_t));
|
image_set_size(hdr, sbuf->st_size - sizeof(image_header_t));
|
||||||
image_set_load (hdr, params->addr);
|
image_set_load(hdr, params->addr);
|
||||||
image_set_ep (hdr, params->ep);
|
image_set_ep(hdr, params->ep);
|
||||||
image_set_dcrc (hdr, checksum);
|
image_set_dcrc(hdr, checksum);
|
||||||
image_set_os (hdr, params->os);
|
image_set_os(hdr, params->os);
|
||||||
image_set_arch (hdr, params->arch);
|
image_set_arch(hdr, params->arch);
|
||||||
image_set_type (hdr, params->type);
|
image_set_type(hdr, params->type);
|
||||||
image_set_comp (hdr, params->comp);
|
image_set_comp(hdr, params->comp);
|
||||||
|
|
||||||
image_set_name (hdr, params->imagename);
|
image_set_name(hdr, params->imagename);
|
||||||
|
|
||||||
checksum = crc32 (0, (const unsigned char *)hdr,
|
checksum = crc32(0, (const unsigned char *)hdr,
|
||||||
sizeof(image_header_t));
|
sizeof(image_header_t));
|
||||||
|
|
||||||
image_set_hcrc (hdr, checksum);
|
image_set_hcrc(hdr, checksum);
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
@ -143,7 +143,7 @@ static struct image_type_params defimage_params = {
|
|||||||
.check_params = image_check_params,
|
.check_params = image_check_params,
|
||||||
};
|
};
|
||||||
|
|
||||||
void init_default_image_type (void)
|
void init_default_image_type(void)
|
||||||
{
|
{
|
||||||
mkimage_register (&defimage_params);
|
mkimage_register(&defimage_params);
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user