summaryrefslogtreecommitdiffstats
path: root/flashrom.c
diff options
context:
space:
mode:
authorCarl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net>2010-10-06 23:48:34 +0000
committerCarl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net>2010-10-06 23:48:34 +0000
commita73fb4983df7284e3d0e0a3fa79aa197bed324db (patch)
treebb46efa05f3782f03b7aeaab68eac36af5344d31 /flashrom.c
parentf992c19fcaba3567fb11767ad0b9aaf22459abc2 (diff)
downloadflashrom-a73fb4983df7284e3d0e0a3fa79aa197bed324db.tar.gz
flashrom-a73fb4983df7284e3d0e0a3fa79aa197bed324db.tar.bz2
flashrom-a73fb4983df7284e3d0e0a3fa79aa197bed324db.zip
Refine -L output to include all programmer modules
Flashrom -L output did not contain a list of programmers nor were all programmers listed. Fix it and mention at least the name of each programmer. Wiki output is unchanged, and will need separate fixups. Corresponding to flashrom svn r1199. Signed-off-by: Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net> Acked-by: Uwe Hermann <uwe@hermann-uwe.de>
Diffstat (limited to 'flashrom.c')
-rw-r--r--flashrom.c41
1 files changed, 41 insertions, 0 deletions
diff --git a/flashrom.c b/flashrom.c
index 0a3e4fe42..fa36bfb0c 100644
--- a/flashrom.c
+++ b/flashrom.c
@@ -1332,6 +1332,47 @@ void list_programmers(char *delim)
msg_ginfo("\n");
}
+void list_programmers_linebreak(int startcol, int cols, int paren)
+{
+ const char *pname;
+ int pnamelen;
+ int remaining = 0;
+ int firstline = 1;
+ enum programmer p;
+ int i;
+
+ for (p = 0; p < PROGRAMMER_INVALID; p++) {
+ pname = programmer_table[p].name;
+ pnamelen = strlen(pname);
+ if (remaining - pnamelen - 2 < 0) {
+ if (firstline)
+ firstline = 0;
+ else
+ printf("\n");
+ for (i = 0; i < startcol; i++)
+ printf(" ");
+ remaining = cols - startcol;
+ } else {
+ printf(" ");
+ remaining--;
+ }
+ if (paren && (p == 0)) {
+ printf("(");
+ remaining--;
+ }
+ printf("%s", pname);
+ remaining -= pnamelen;
+ if (p < PROGRAMMER_INVALID - 1) {
+ printf(",");
+ remaining--;
+ } else {
+ if (paren)
+ printf(")");
+ printf("\n");
+ }
+ }
+}
+
void print_sysinfo(void)
{
#if HAVE_UTSNAME == 1