+// SPDX-License-Identifier: GPL-2.0+
/*
* (C) Copyright 2008 Semihalf
*
* (C) Copyright 2000-2009
* DENX Software Engineering
* Wolfgang Denk, wd@denx.de
- *
- * SPDX-License-Identifier: GPL-2.0+
*/
#include "mkimage.h"
#endif
fprintf(stderr, " %s -V ==> print version information and exit\n",
params.cmdname);
- fprintf(stderr, "Use -T to see a list of available image types\n");
+ fprintf(stderr, "Use '-T list' to see a list of available image types\n");
exit(EXIT_FAILURE);
}
params.skipcpy = 1;
break;
case 'T':
+ if (strcmp(optarg, "list") == 0) {
+ show_valid_options(IH_TYPE);
+ exit(EXIT_SUCCESS);
+ }
type = genimg_get_type_id(optarg);
if (type < 0) {
show_valid_options(IH_TYPE);
else if (!params.datafile)
usage("Missing data file for auto-FIT (use -d)");
} else if (type != IH_TYPE_INVALID) {
+ if (type == IH_TYPE_SCRIPT && !params.datafile)
+ usage("Missing data file for script (use -d)");
params.type = type;
}
} else if (params.type == IH_TYPE_PBLIMAGE) {
/* PBL has special Image format, implements its' own */
pbl_load_uboot(ifd, ¶ms);
+ } else if (params.type == IH_TYPE_ZYNQMPBIF) {
+ /* Image file is meta, walk through actual targets */
+ int ret;
+
+ ret = zynqmpbif_copy_image(ifd, ¶ms);
+ if (ret)
+ return ret;
} else {
copy_file(ifd, params.datafile, pad_len);
}
if (tparams->print_header)
tparams->print_header (ptr);
else {
- fprintf (stderr, "%s: Can't print header for %s: %s\n",
- params.cmdname, tparams->name, strerror(errno));
- exit (EXIT_FAILURE);
+ fprintf (stderr, "%s: Can't print header for %s\n",
+ params.cmdname, tparams->name);
}
(void) munmap((void *)ptr, sbuf.st_size);