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 | 1159d5864acbb4721ca5a0b77bb38284420e1194 (patch) | |
tree | 66d13a48051efcd6c9cf9fa7755af9a4d05933c8 /flashrom.c | |
parent | 9477c4eca5db12ebed4636547d00a237f3ad2b84 (diff) | |
download | ast2050-flashrom-1159d5864acbb4721ca5a0b77bb38284420e1194.zip ast2050-flashrom-1159d5864acbb4721ca5a0b77bb38284420e1194.tar.gz |
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.
Corresponding to flashrom svn r221 and coreboot v2 svn r3277.
Signed-off-by: Peter Stuge <peter@stuge.se>
Acked-by: Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net>
Diffstat (limited to 'flashrom.c')
-rw-r--r-- | flashrom.c | 30 |
1 files changed, 30 insertions, 0 deletions
@@ -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"); |