summaryrefslogtreecommitdiff
path: root/util/cbfstool
diff options
context:
space:
mode:
authorJonathan Neuschäfer <j.neuschaefer@gmx.net>2018-04-08 15:05:09 +0200
committerMartin Roth <martinroth@google.com>2018-04-11 14:12:00 +0000
commitfbc66b9dc035bcd287d434363ce984c41118bf95 (patch)
treee7c9d6916bc5d0db0274a5577732beb6cdf9395f /util/cbfstool
parente32cea15c8534faa817f32cd3dd9ae89e44f6d98 (diff)
downloadcoreboot-fbc66b9dc035bcd287d434363ce984c41118bf95.tar.xz
util/cbfstool: Print all supported architectures
The list of supported architectures in the usage output of cbfstool is currently hardcoded and outdated. Use the arch_names array in common.c to provide and up-to-date list. Change-Id: I3e7ed67c3bfd928b304c314fcc8e1bea35561662 Signed-off-by: Jonathan Neuschäfer <j.neuschaefer@gmx.net> Reviewed-on: https://review.coreboot.org/25590 Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Patrick Georgi <pgeorgi@google.com>
Diffstat (limited to 'util/cbfstool')
-rw-r--r--util/cbfstool/cbfstool.c7
-rw-r--r--util/cbfstool/common.c12
-rw-r--r--util/cbfstool/common.h1
3 files changed, 17 insertions, 3 deletions
diff --git a/util/cbfstool/cbfstool.c b/util/cbfstool/cbfstool.c
index 1f71906ef6..7156e00bc6 100644
--- a/util/cbfstool/cbfstool.c
+++ b/util/cbfstool/cbfstool.c
@@ -1350,10 +1350,11 @@ static void usage(char *name)
" in two possible formats: if their value is greater than\n"
" 0x80000000, they are interpreted as a top-aligned x86 memory\n"
" address; otherwise, they are treated as an offset into flash.\n"
- "ARCHes:\n"
- " arm64, arm, mips, x86\n"
- "TYPEs:\n", name, name
+ "ARCHes:\n", name, name
);
+ print_supported_architectures();
+
+ printf("TYPEs:\n");
print_supported_filetypes();
printf(
diff --git a/util/cbfstool/common.c b/util/cbfstool/common.c
index 72ff745f1d..14ccaa9584 100644
--- a/util/cbfstool/common.c
+++ b/util/cbfstool/common.c
@@ -168,6 +168,18 @@ const char *arch_to_string(uint32_t a)
return ret;
}
+void print_supported_architectures(void)
+{
+ size_t i;
+
+ for (i = 0; i < ARRAY_SIZE(arch_names); i++) {
+ printf(i == 0? " ":", ");
+ printf("%s", arch_names[i].name);
+ }
+
+ printf("\n");
+}
+
void print_supported_filetypes(void)
{
int i, number = ARRAY_SIZE(filetypes);
diff --git a/util/cbfstool/common.h b/util/cbfstool/common.h
index 85dfdeb589..8bae63e08e 100644
--- a/util/cbfstool/common.h
+++ b/util/cbfstool/common.h
@@ -204,6 +204,7 @@ int parse_elf_to_stage(const struct buffer *input, struct buffer *output,
int parse_elf_to_xip_stage(const struct buffer *input, struct buffer *output,
uint32_t *location, const char *ignore_section);
+void print_supported_architectures(void);
void print_supported_filetypes(void);
/* lzma/lzma.c */