From: Al Stone ahs3@redhat.com
Signed-off-by: Al Stone al.stone@linaro.org --- tools/mab/mab.c | 19 +++++++++++-------- tools/mab/mab.h | 2 +- 2 files changed, 12 insertions(+), 9 deletions(-)
diff --git a/tools/mab/mab.c b/tools/mab/mab.c index f906efb..3107088 100644 --- a/tools/mab/mab.c +++ b/tools/mab/mab.c @@ -579,16 +579,19 @@ int main(int argc, char *argv[]) /* all done, so write out the blob */ write_blob(homedir, acpi_blob_name, blob, offset + BLOB_HEADER_SIZE);
+ /* make sure we had room for all of the tables */ + LIST_FOREACH(np, &thead, tables) { + if (np->offset < 0) { + for (jj = 0; jj < SIG_LENGTH; jj++) + sig[jj] = toupper(np->signature[jj]); + printf("? no room in XSDT for %s (%4s)\n", + basename(np->asl_name), sig); + err = 2; /* anything non-zero, really... */ + } + } + if (!quiet) { printf("%s %s\n", PROGNAME, VERSION); - LIST_FOREACH(np, &thead, tables) { - if (np->offset < 0) { - for (jj = 0; jj < SIG_LENGTH; jj++) - sig[jj] = toupper(np->signature[jj]); - printf("? no room in XSDT for %s (%4s)\n", - basename(np->asl_name), sig); - } - } ii = 0; LIST_FOREACH(np, &thead, tables) { printf("[%03d] %4s : %s (%d bytes @ 0x%08x)\n", ii, diff --git a/tools/mab/mab.h b/tools/mab/mab.h index 8b0a676..3db3d11 100644 --- a/tools/mab/mab.h +++ b/tools/mab/mab.h @@ -27,7 +27,7 @@ #define SIG_LENGTH 4
/* VERSION a.b.c = <public release>.<functionality changes>.<bug fixes> */ -const char VERSION[] = { "0.28.3" }; +const char VERSION[] = { "0.28.4" }; const char PROGNAME[] = { "mab" };
char *known_sigs[] = {