summaryrefslogtreecommitdiffstats
path: root/flash.h
diff options
context:
space:
mode:
authorPeter Stuge <peter@stuge.se>2008-05-03 04:34:37 +0000
committerPeter Stuge <peter@stuge.se>2008-05-03 04:34:37 +0000
commit1159d5864acbb4721ca5a0b77bb38284420e1194 (patch)
tree66d13a48051efcd6c9cf9fa7755af9a4d05933c8 /flash.h
parent9477c4eca5db12ebed4636547d00a237f3ad2b84 (diff)
downloadast2050-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 'flash.h')
-rw-r--r--flash.h19
1 files changed, 19 insertions, 0 deletions
diff --git a/flash.h b/flash.h
index 3c07210..58c650b 100644
--- a/flash.h
+++ b/flash.h
@@ -45,6 +45,11 @@ struct flashchip {
int total_size;
int page_size;
+ /* Indicate if flashrom has been tested with this flash chip and if
+ * everything worked correctly.
+ */
+ uint32_t tested;
+
int (*probe) (struct flashchip *flash);
int (*erase) (struct flashchip *flash);
int (*write) (struct flashchip *flash, uint8_t *buf);
@@ -55,6 +60,20 @@ struct flashchip {
volatile uint8_t *virtual_registers;
};
+#define TEST_UNTESTED 0
+
+#define TEST_OK_PROBE (1<<0)
+#define TEST_OK_READ (1<<1)
+#define TEST_OK_ERASE (1<<2)
+#define TEST_OK_WRITE (1<<3)
+#define TEST_OK_MASK 0x0f
+
+#define TEST_BAD_PROBE (1<<4)
+#define TEST_BAD_READ (1<<5)
+#define TEST_BAD_ERASE (1<<6)
+#define TEST_BAD_WRITE (1<<7)
+#define TEST_BAD_MASK 0xf0
+
extern struct flashchip flashchips[];
/*
OpenPOWER on IntegriCloud