diff options
author | Peter Stuge <peter@stuge.se> | 2008-05-03 04:34:37 +0000 |
---|---|---|
committer | Peter Stuge <peter@stuge.se> | 2008-05-03 04:34:37 +0000 |
commit | 4934fc03cbbf1373d30c08fa9b7d68144eec4ece (patch) | |
tree | 09c33c096154b073d1c639b03f51670aa4af1f99 /util/flashrom/flashrom.c | |
parent | a9a5f49d8f69ed131f902f04f651ac96bd6f80cc (diff) | |
download | coreboot-4934fc03cbbf1373d30c08fa9b7d68144eec4ece.tar.xz |
flashrom: Add a tested bitmap field to the flash chip table.
Two bits indicate OK and BAD for each operation PROBE READ ERASE WRITE.
8 bits out of 32 are in use now. No bits set means nothing has been tested.
For chips with at least one operation that is not tested or not working, the
user is asked to email a report to a special email adress so that the table
can be updated.
All chips are TEST_UNTESTED for now.
Signed-off-by: Peter Stuge <peter@stuge.se>
Acked-by: Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net>
git-svn-id: svn://svn.coreboot.org/coreboot/trunk@3277 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
Diffstat (limited to 'util/flashrom/flashrom.c')
-rw-r--r-- | util/flashrom/flashrom.c | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/util/flashrom/flashrom.c b/util/flashrom/flashrom.c index c7d0bdac0d..2f3d7c9083 100644 --- a/util/flashrom/flashrom.c +++ b/util/flashrom/flashrom.c @@ -412,6 +412,36 @@ int main(int argc, char *argv[]) } printf("Flash part is %s (%d KB).\n", flash->name, flash->total_size); + if (TEST_OK_MASK != (flash->tested & TEST_OK_MASK)) { + printf("===\n"); + if (flash->tested & TEST_BAD_MASK) { + printf("This flash part has status NOT WORKING for operations:"); + if (flash->tested & TEST_BAD_PROBE) + printf(" PROBE"); + if (flash->tested & TEST_BAD_READ) + printf(" READ"); + if (flash->tested & TEST_BAD_ERASE) + printf(" ERASE"); + if (flash->tested & TEST_BAD_WRITE) + printf(" WRITE"); + printf("\n"); + } else { + printf("This flash part has status UNTESTED for operations:"); + if (!(flash->tested & TEST_OK_PROBE)) + printf(" PROBE"); + if (!(flash->tested & TEST_OK_READ)) + printf(" READ"); + if (!(flash->tested & TEST_OK_ERASE)) + printf(" ERASE"); + if (!(flash->tested & TEST_OK_WRITE)) + printf(" WRITE"); + printf("\n"); + } + printf("Please email a report to flashrom@coreboot.org if any of the above operations\n"); + printf("work correctly for you with this flash part. Please include the full output\n"); + printf("from the program, including chipset found. Thank you for your help!\n"); + printf("===\n"); + } if (!(read_it | write_it | verify_it | erase_it)) { printf("No operations were specified.\n"); |