Skip to content
Snippets Groups Projects
Commit 3837ce65 authored by Simon Glass's avatar Simon Glass Committed by Tom Rini
Browse files

tools: Add a function to obtain the size of a file


This will be used in mkimage when working out the required size of the FIT
based on the files to be placed into it.

Signed-off-by: default avatarSimon Glass <sjg@chromium.org>
parent d505a09c
No related branches found
No related tags found
No related merge requests found
...@@ -164,7 +164,7 @@ skipping those for which keys cannot be found. Also add a comment. ...@@ -164,7 +164,7 @@ skipping those for which keys cannot be found. Also add a comment.
.nf .nf
.B mkimage -f kernel.its -k /public/signing-keys -K u-boot.dtb \\\\ .B mkimage -f kernel.its -k /public/signing-keys -K u-boot.dtb \\\\
.br .br
.B -c "Kernel 3.8 image for production devices" kernel.itb .B -c """Kernel 3.8 image for production devices""" kernel.itb
.fi .fi
.P .P
...@@ -175,7 +175,7 @@ with unavailable keys are skipped. ...@@ -175,7 +175,7 @@ with unavailable keys are skipped.
.nf .nf
.B mkimage -F -k /secret/signing-keys -K u-boot.dtb \\\\ .B mkimage -F -k /secret/signing-keys -K u-boot.dtb \\\\
.br .br
.B -c "Kernel 3.8 image for production devices" kernel.itb .B -c """Kernel 3.8 image for production devices""" kernel.itb
.fi .fi
.SH HOMEPAGE .SH HOMEPAGE
......
...@@ -91,3 +91,25 @@ int imagetool_save_subimage( ...@@ -91,3 +91,25 @@ int imagetool_save_subimage(
return 0; return 0;
} }
int imagetool_get_filesize(struct image_tool_params *params, const char *fname)
{
struct stat sbuf;
int fd;
fd = open(fname, O_RDONLY | O_BINARY);
if (fd < 0) {
fprintf(stderr, "%s: Can't open %s: %s\n",
params->cmdname, fname, strerror(errno));
return -1;
}
if (fstat(fd, &sbuf) < 0) {
fprintf(stderr, "%s: Can't stat %s: %s\n",
params->cmdname, fname, strerror(errno));
return -1;
}
close(fd);
return sbuf.st_size;
}
...@@ -181,6 +181,18 @@ int imagetool_save_subimage( ...@@ -181,6 +181,18 @@ int imagetool_save_subimage(
ulong file_data, ulong file_data,
ulong file_len); ulong file_len);
/**
* imagetool_get_filesize() - Utility function to obtain the size of a file
*
* This function prints a message if an error occurs, showing the error that
* was obtained.
*
* @params: mkimage parameters
* @fname: filename to check
* @return size of file, or -ve value on error
*/
int imagetool_get_filesize(struct image_tool_params *params, const char *fname);
/* /*
* There is a c file associated with supported image type low level code * There is a c file associated with supported image type low level code
* for ex. default_image.c, fit_image.c * for ex. default_image.c, fit_image.c
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment