diff options
author | Amaury Pouly <amaury.pouly@gmail.com> | 2013-08-21 22:20:53 +0200 |
---|---|---|
committer | Amaury Pouly <amaury.pouly@gmail.com> | 2013-08-21 22:20:53 +0200 |
commit | 99f3ca174e3e6a3e6a55931b012208be64d8be39 (patch) | |
tree | 2a8a1a6ab55f44be85d287c06f9f35e0a5bd92fc /rbutil/mkimxboot | |
parent | 1357e0a4f1567e4bf5f3ecb27c28457d1dfc1ab4 (diff) | |
download | rockbox-99f3ca174e3e6a3e6a55931b012208be64d8be39.tar.gz rockbox-99f3ca174e3e6a3e6a55931b012208be64d8be39.zip |
sbtools: more code refactoring
Factor all printf method with a unique one defined in misc.h
Change-Id: I58fbf8916b76e873a2e6678506d2c8aece7834ec
Diffstat (limited to 'rbutil/mkimxboot')
-rw-r--r-- | rbutil/mkimxboot/mkimxboot.c | 28 |
1 files changed, 3 insertions, 25 deletions
diff --git a/rbutil/mkimxboot/mkimxboot.c b/rbutil/mkimxboot/mkimxboot.c index 47035bbc4d..511b3a1b7e 100644 --- a/rbutil/mkimxboot/mkimxboot.c +++ b/rbutil/mkimxboot/mkimxboot.c | |||
@@ -540,7 +540,7 @@ static enum imx_error_t load_sb_file(const char *file, int md5_idx, | |||
540 | clear_keys(); | 540 | clear_keys(); |
541 | add_keys(imx_models[model].keys, imx_models[model].nr_keys); | 541 | add_keys(imx_models[model].keys, imx_models[model].nr_keys); |
542 | *sb_file = sb_read_file_ex(file, imx_sums[md5_idx].fw_variants[opt.fw_variant].offset, | 542 | *sb_file = sb_read_file_ex(file, imx_sums[md5_idx].fw_variants[opt.fw_variant].offset, |
543 | imx_sums[md5_idx].fw_variants[opt.fw_variant].size, false, NULL, &sb_std_printf, &err); | 543 | imx_sums[md5_idx].fw_variants[opt.fw_variant].size, false, NULL, generic_std_printf, &err); |
544 | if(*sb_file == NULL) | 544 | if(*sb_file == NULL) |
545 | { | 545 | { |
546 | clear_keys(); | 546 | clear_keys(); |
@@ -595,28 +595,6 @@ struct elf_user_t | |||
595 | size_t sz; | 595 | size_t sz; |
596 | }; | 596 | }; |
597 | 597 | ||
598 | static bool elf_read(void *user, uint32_t addr, void *buf, size_t count) | ||
599 | { | ||
600 | struct elf_user_t *u = user; | ||
601 | if(addr + count <= u->sz) | ||
602 | { | ||
603 | memcpy(buf, u->buf + addr, count); | ||
604 | return true; | ||
605 | } | ||
606 | else | ||
607 | return false; | ||
608 | } | ||
609 | |||
610 | static void elf_printf(void *user, bool error, const char *fmt, ...) | ||
611 | { | ||
612 | if(!g_debug && !error) | ||
613 | return; | ||
614 | (void) user; | ||
615 | va_list args; | ||
616 | va_start(args, fmt); | ||
617 | vprintf(fmt, args); | ||
618 | va_end(args); | ||
619 | } | ||
620 | /* Load a rockbox firwmare from a buffer. Data is copied. Assume firmware is | 598 | /* Load a rockbox firwmare from a buffer. Data is copied. Assume firmware is |
621 | * using ELF format. */ | 599 | * using ELF format. */ |
622 | static enum imx_error_t rb_fw_load_buf_elf(struct rb_fw_t *fw, uint8_t *buf, | 600 | static enum imx_error_t rb_fw_load_buf_elf(struct rb_fw_t *fw, uint8_t *buf, |
@@ -627,7 +605,7 @@ static enum imx_error_t rb_fw_load_buf_elf(struct rb_fw_t *fw, uint8_t *buf, | |||
627 | user.buf = buf; | 605 | user.buf = buf; |
628 | user.sz = sz; | 606 | user.sz = sz; |
629 | elf_init(&elf); | 607 | elf_init(&elf); |
630 | if(!elf_read_file(&elf, &elf_read, &elf_printf, &user)) | 608 | if(!elf_read_file(&elf, elf_std_read, generic_std_printf, &user)) |
631 | { | 609 | { |
632 | elf_release(&elf); | 610 | elf_release(&elf); |
633 | printf("[ERR] Error parsing ELF file\n"); | 611 | printf("[ERR] Error parsing ELF file\n"); |
@@ -744,7 +722,7 @@ enum imx_error_t mkimxboot(const char *infile, const char *bootfile, | |||
744 | ret = patch_firmware(model, opt.fw_variant, opt.output, | 722 | ret = patch_firmware(model, opt.fw_variant, opt.output, |
745 | sb_file, boot_fw, opt.force_version); | 723 | sb_file, boot_fw, opt.force_version); |
746 | if(ret == IMX_SUCCESS) | 724 | if(ret == IMX_SUCCESS) |
747 | ret = sb_write_file(sb_file, outfile, NULL, sb_std_printf); | 725 | ret = sb_write_file(sb_file, outfile, NULL, generic_std_printf); |
748 | 726 | ||
749 | clear_keys(); | 727 | clear_keys(); |
750 | rb_fw_free(&boot_fw); | 728 | rb_fw_free(&boot_fw); |