diff options
author | Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net> | 2007-12-17 22:22:40 +0000 |
---|---|---|
committer | Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net> | 2007-12-17 22:22:40 +0000 |
commit | d8cc58c85efe877d9f0dbc6ab9f60348741af356 (patch) | |
tree | f5f8efb286c1fc2dd6b790022a692c6c5d58299e | |
parent | 21c7890701dd30977e46091bc101678bc729a746 (diff) | |
download | flashrom-d8cc58c85efe877d9f0dbc6ab9f60348741af356.tar.gz flashrom-d8cc58c85efe877d9f0dbc6ab9f60348741af356.tar.bz2 flashrom-d8cc58c85efe877d9f0dbc6ab9f60348741af356.zip |
Add support for various ST M25P* chips
Add support for ST M25P05-A, M25P10-A, M25P20, M25P40, M25P16, M25P32,
M25P64, M25P128.
ST M25P80 support is already there. Not tested, but conforming to data
sheets and double checked.
Corresponding to flashrom svn r166 and coreboot v2 svn r3012.
Signed-off-by: Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net>
Acked-by: Uwe Hermann <uwe@hermann-uwe.de>
-rw-r--r-- | flash.h | 8 | ||||
-rw-r--r-- | flashchips.c | 16 |
2 files changed, 24 insertions, 0 deletions
@@ -172,7 +172,15 @@ extern struct flashchip flashchips[]; * byte of device ID is related to log(bitsize) at least for some chips. */ #define ST_ID 0x20 /* ST */ +#define ST_M25P05A 0x2010 +#define ST_M25P10A 0x2011 +#define ST_M25P20 0x2012 +#define ST_M25P40 0x2013 #define ST_M25P80 0x2014 +#define ST_M25P16 0x2015 +#define ST_M25P32 0x2016 +#define ST_M25P64 0x2017 +#define ST_M25P128 0x2018 #define ST_M50FLW040A 0x08 #define ST_M50FLW040B 0x28 #define ST_M50FLW080A 0x80 diff --git a/flashchips.c b/flashchips.c index f80ebd09..44c9171d 100644 --- a/flashchips.c +++ b/flashchips.c @@ -140,8 +140,24 @@ struct flashchip flashchips[] = { probe_jedec, erase_chip_jedec, write_jedec}, {"M29F040B", ST_ID, ST_M29F040B, 512, 64 * 1024, probe_29f040b, erase_29f040b, write_29f040b}, + {"M25P05-A", ST_ID, ST_M25P05A, 64, 32 * 1024, + probe_spi, generic_spi_chip_erase_c7, generic_spi_chip_write}, + {"M25P10-A", ST_ID, ST_M25P10A, 128, 32 * 1024, + probe_spi, generic_spi_chip_erase_c7, generic_spi_chip_write}, + {"M25P20", ST_ID, ST_M25P20, 256, 64 * 1024, + probe_spi, generic_spi_chip_erase_c7, generic_spi_chip_write}, + {"M25P40", ST_ID, ST_M25P40, 512, 64 * 1024, + probe_spi, generic_spi_chip_erase_c7, generic_spi_chip_write}, {"M25P80", ST_ID, ST_M25P80, 1024, 64 * 1024, probe_spi, generic_spi_chip_erase_c7, generic_spi_chip_write}, + {"M25P16", ST_ID, ST_M25P16, 2048, 64 * 1024, + probe_spi, generic_spi_chip_erase_c7, generic_spi_chip_write}, + {"M25P32", ST_ID, ST_M25P32, 4096, 64 * 1024, + probe_spi, generic_spi_chip_erase_c7, generic_spi_chip_write}, + {"M25P64", ST_ID, ST_M25P64, 8192, 64 * 1024, + probe_spi, generic_spi_chip_erase_c7, generic_spi_chip_write}, + {"M25P128", ST_ID, ST_M25P128, 16384, 256 * 1024, + probe_spi, generic_spi_chip_erase_c7, generic_spi_chip_write}, {"82802ab", 137, 173, 512, 64 * 1024, probe_82802ab, erase_82802ab, write_82802ab}, {"82802ac", 137, 172, 1024, 64 * 1024, |