summaryrefslogtreecommitdiff
path: root/flash.h
diff options
context:
space:
mode:
authorstefanct <stefanct@2b7e53f0-3cfb-0310-b3e9-8179ed1497e1>2012-02-17 14:51:04 +0000
committerstefanct <stefanct@2b7e53f0-3cfb-0310-b3e9-8179ed1497e1>2012-02-17 14:51:04 +0000
commit45df23f55db9b82048536dda8bfa923935734c00 (patch)
tree5553eec8f0f86f363220a979342d59e3c55eae58 /flash.h
parentee8e46834f41e1f25fefafa7e0a36380cbe23f44 (diff)
downloadflashrom-45df23f55db9b82048536dda8bfa923935734c00.tar.gz
Add support for SFDP (JESD216).
Similar to modules using the opaque programmer framework (e.g. ICH Hardware Sequencing) this uses a template struct flashchip element in flashchips.c with a special probe function that fills the obtained values into that struct. This allows yet unknown SPI chips to be supported (read, erase, write) almost as if it was already added to flashchips.c. Documentation used: http://www.jedec.org/standards-documents/docs/jesd216 (2011-04) W25Q32BV data sheet Revision F (2011-04-01) EN25QH16 data sheet Revision F (2011-06-01) MX25L6436E data sheet Revision 1.8 (2011-12-26) Tested-by: David Hendricks <dhendrix@google.com> on W25Q64CV + dediprog Tested-by: Stefan Tauner <stefan.tauner@student.tuwien.ac.at> on a 2010 MX25L6436E with preliminary (i.e. incorrect) SFDP implementation + serprog Thanks also to Michael Karcher for his comments and preliminary review! Signed-off-by: Stefan Tauner <stefan.tauner@student.tuwien.ac.at> Acked-by: Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net> git-svn-id: https://code.coreboot.org/svn/flashrom/trunk@1500 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
Diffstat (limited to 'flash.h')
-rw-r--r--flash.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/flash.h b/flash.h
index 20db343..0dac13d 100644
--- a/flash.h
+++ b/flash.h
@@ -175,6 +175,8 @@ struct flashctx {
struct registered_programmer *pgm;
};
+typedef int (erasefunc_t)(struct flashctx *flash, unsigned int addr, unsigned int blocklen);
+
#define TEST_UNTESTED 0
#define TEST_OK_PROBE (1 << 0)