
Hi Philippe,
On 3 December 2015 at 14:11, Philippe De Swert philippedeswert@gmail.com wrote:
Seems 92a655c3 broke creating multi and script type images. Since the file1:file2:file3 string does not get split up, it fails on trying to open an non-existing file.
mkimage -A arm -O linux -T multi -C none -d zImage:splash.bmp:device.dtb uimage tools/mkimage: Can't open zImage:splash.bmp:device.dtb: No such file or directory
Since the sizes of the different parts seem to get added in the actual routine that handles multi and script type images, we can probably skip the bit of the code that causes the failure for that type of images.
Signed-off-by: Philippe De Swert philippedeswert@gmail.com
tools/mkimage.c | 31 ++++++++++++++++++------------- 1 file changed, 18 insertions(+), 13 deletions(-)
diff --git a/tools/mkimage.c b/tools/mkimage.c index 8af9d50..ae01cb1 100644 --- a/tools/mkimage.c +++ b/tools/mkimage.c @@ -311,21 +311,26 @@ NXTARG: ; exit (retval); }
dfd = open(params.datafile, O_RDONLY | O_BINARY);
if (dfd < 0) {
fprintf(stderr, "%s: Can't open %s: %s\n",
params.cmdname, params.datafile, strerror(errno));
exit(EXIT_FAILURE);
}
if (!params.type == IH_TYPE_MULTI ||
!params.type == IH_TYPE_SCRIPT) {
This breaks rockchip image generation. I'm not sure what the above two lines are supposed to do, but if they are correct they are very confusing. Can you please take a look? I'll send a revert in the meantime.
dfd = open(params.datafile, O_RDONLY | O_BINARY);
if (dfd < 0) {
fprintf(stderr, "%s: Can't open %s: %s\n",
params.cmdname, params.datafile,
strerror(errno));
exit(EXIT_FAILURE);
}
if (fstat(dfd, &sbuf) < 0) {
fprintf(stderr, "%s: Can't stat %s: %s\n",
params.cmdname, params.datafile, strerror(errno));
exit(EXIT_FAILURE);
}
if (fstat(dfd, &sbuf) < 0) {
fprintf(stderr, "%s: Can't stat %s: %s\n",
params.cmdname, params.datafile,
strerror(errno));
exit(EXIT_FAILURE);
}
params.file_size = sbuf.st_size + tparams->header_size;
close(dfd);
params.file_size = sbuf.st_size + tparams->header_size;
close(dfd);
} /* * In case there an header with a variable
-- 2.1.4
Regards, Simon