1
0
mirror of https://xff.cz/git/u-boot/ synced 2025-09-01 00:32:04 +02:00

mkimage: Support automatic creating of a FIT without a .its

At present, when generating a FIT, mkimage requires a .its file containing
the structure of the FIT and referring to the images to be included.

Creating the .its file is a separate step that makes it harder to use FIT.
This is not required for creating legacy images.

Often the FIT is pretty standard, consisting of an OS image, some device
tree files and a single configuration. We can handle this case automatically
and avoid needing a .its file at all.

To start with, support automatically generate the FIT using a new '-f auto'
option. Initially this only supports adding a single image (e.g. a linux
kernel) and a single configuration.

Signed-off-by: Simon Glass <sjg@chromium.org>
This commit is contained in:
Simon Glass
2016-02-22 22:55:51 -07:00
committed by Tom Rini
parent cef2e51489
commit 8e35bb07eb
4 changed files with 235 additions and 6 deletions

View File

@@ -85,7 +85,7 @@ static void usage(const char *msg)
" -x ==> set XIP (execute in place)\n",
params.cmdname);
fprintf(stderr,
" %s [-D dtc_options] [-f fit-image.its|-F] fit-image\n",
" %s [-D dtc_options] [-f fit-image.its|-f auto|-F] fit-image\n",
params.cmdname);
fprintf(stderr,
" -D => set all options for device tree compiler\n"
@@ -159,7 +159,8 @@ static void process_args(int argc, char **argv)
params.eflag = 1;
break;
case 'f':
params.datafile = optarg;
datafile = optarg;
params.auto_its = !strcmp(datafile, "auto");
/* no break */
case 'F':
/*
@@ -235,7 +236,8 @@ static void process_args(int argc, char **argv)
*/
if (params.type == IH_TYPE_FLATDT) {
params.fit_image_type = type;
params.datafile = datafile;
if (!params.auto_its)
params.datafile = datafile;
} else if (type != IH_TYPE_INVALID) {
params.type = type;
}