1
0
mirror of https://review.coreboot.org/flashrom.git synced 2025-06-30 21:52:36 +02:00

Add --list-supported option which lists the supported ROM chips, chipsets, and mainboards

Corresponding to flashrom svn r199 and coreboot v2 svn r3133.

Signed-off-by: Uwe Hermann <uwe@hermann-uwe.de>
Acked-by: Ward Vandewege <ward@gnu.org>
This commit is contained in:
Uwe Hermann
2008-03-12 11:54:51 +00:00
parent 75f510768d
commit e5ac16445f
5 changed files with 64 additions and 7 deletions

View File

@ -193,9 +193,19 @@ int verify_flash(struct flashchip *flash, uint8_t *buf)
return 0;
}
void print_supported_chips(void)
{
int i;
printf("Supported ROM chips:\n\n");
for (i = 0; flashchips[i].name != NULL; i++)
printf("%s\n", flashchips[i].name);
}
void usage(const char *name)
{
printf("usage: %s [-rwvEVfhR] [-c chipname] [-s exclude_start]\n", name);
printf("usage: %s [-rwvEVfLhR] [-c chipname] [-s exclude_start]\n", name);
printf(" [-e exclude_end] [-m [vendor:]part] [-l file.layout] [-i imagename] [file]\n");
printf
(" -r | --read: read flash and save into file\n"
@ -210,8 +220,10 @@ void usage(const char *name)
" -f | --force: force write without checking image\n"
" -l | --layout <file.layout>: read rom layout from file\n"
" -i | --image <name>: only flash image name from flash layout\n"
" -L | --list-supported: print supported devices\n"
" -h | --help: print this help text\n"
" -R | --version: print the version (release)\n"
"\n" " If no file is specified, then all that happens"
"\n" " If no file is specified, then all that happens"
" is that flash info is dumped.\n\n");
exit(1);
}
@ -245,6 +257,7 @@ int main(int argc, char *argv[])
{"force", 0, 0, 'f'},
{"layout", 1, 0, 'l'},
{"image", 1, 0, 'i'},
{"list-supported", 0, 0, 'L'},
{"help", 0, 0, 'h'},
{"version", 0, 0, 'R'},
{0, 0, 0, 0}
@ -264,7 +277,7 @@ int main(int argc, char *argv[])
}
setbuf(stdout, NULL);
while ((opt = getopt_long(argc, argv, "rRwvVEfc:s:e:m:l:i:h",
while ((opt = getopt_long(argc, argv, "rRwvVEfc:s:e:m:l:i:Lh",
long_options, &option_index)) != EOF) {
switch (opt) {
case 'r':
@ -317,6 +330,12 @@ int main(int argc, char *argv[])
tempstr = strdup(optarg);
find_romentry(tempstr);
break;
case 'L':
print_supported_chips();
print_supported_chipsets();
print_supported_boards();
exit(0);
break;
case 'R':
print_version();
exit(0);