summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorUwe Hermann <uwe@hermann-uwe.de>2007-04-28 02:22:59 +0000
committerPeter Stuge <peter@stuge.se>2007-04-28 02:22:59 +0000
commitd7f48069f9c30ffd5e3acc87ca2fcad4530e2c41 (patch)
tree8a361cf381e8be7ada84a15906ac9adaf295f974
parent0a05d67baba067c823d198937001563c311367b6 (diff)
downloadast2050-flashrom-d7f48069f9c30ffd5e3acc87ca2fcad4530e2c41.zip
ast2050-flashrom-d7f48069f9c30ffd5e3acc87ca2fcad4530e2c41.tar.gz
Add initial support for the following flash chips
- Atmel AT29C020 - STMicroelectronics M29F002B - STMicroelectronics M29F002T - STMicroelectronics M29F002NT Corresponding to flashrom svn r105 and coreboot v2 svn r2621. Signed-off-by: Uwe Hermann <uwe@hermann-uwe.de> Signed-off-by: Roger Zauner <roger@eskimo.com> Acked-by: Peter Stuge <peter@stuge.se>
-rw-r--r--README4
-rw-r--r--flash.h5
-rw-r--r--flashchips.c10
3 files changed, 16 insertions, 3 deletions
diff --git a/README b/README
index 2c83b43..9c96857 100644
--- a/README
+++ b/README
@@ -92,6 +92,7 @@ AMD AM-29F040B
AMD AM-29F016D
ASD AE49F2008
Atmel AT-29C040A
+Atmel AT-29C020
EMST F49B002UA
Intel 82802AB (Firmware Hub)
Intel 82802AC (Firmware Hub)
@@ -118,6 +119,9 @@ SST SST-49LF008A
SST SST-49LF004C
SST SST-49LF008C
SST SST-49LF016C
+ST ST-M29F002B
+ST ST-M29F002T
+ST ST-M29F002NT
ST ST-M29F400BT
ST ST-M29F040B
SyncMOS S29C51001T/B
diff --git a/flash.h b/flash.h
index b22227d..0d54c42 100644
--- a/flash.h
+++ b/flash.h
@@ -64,6 +64,7 @@ extern struct flashchip flashchips[];
#define ATMEL_ID 0x1F /* Atmel */
#define AT_29C040A 0xA4
+#define AT_29C020 0xDA
#define MX_ID 0xC2 /* Macronix (MX) */
#define MX_29F002 0xB0
@@ -106,8 +107,10 @@ extern struct flashchip flashchips[];
#define W_49V002FA 0x32
#define ST_ID 0x20 /* ST */
-#define ST_M29F040B 0xE2
+#define ST_M29F002B 0x34
+#define ST_M29F002T 0xB0 /* M29F002T / M29F002NT */
#define ST_M29F400BT 0xD5
+#define ST_M29F040B 0xE2
#define EMST_ID 0x8c /* EMST / EFST */
#define EMST_F49B002UA 0x00
diff --git a/flashchips.c b/flashchips.c
index c4ae6f4..bf0a976 100644
--- a/flashchips.c
+++ b/flashchips.c
@@ -49,6 +49,8 @@ struct flashchip flashchips[] = {
probe_jedec, erase_chip_jedec, write_jedec, NULL},
{"At29C040A", ATMEL_ID, AT_29C040A, NULL, 512, 256,
probe_jedec, erase_chip_jedec, write_jedec, NULL},
+ {"At29C020", ATMEL_ID, AT_29C020, NULL, 256, 256,
+ probe_jedec, erase_chip_jedec, write_jedec, NULL},
{"Mx29f002", MX_ID, MX_29F002, NULL, 256, 64 * 1024,
probe_29f002, erase_29f002, write_29f002, NULL},
{"SST29EE020A", SST_ID, SST_29EE020A, NULL, 256, 128,
@@ -109,10 +111,14 @@ struct flashchip flashchips[] = {
probe_jedec, erase_chip_jedec, write_39sf020, NULL},
{"W39V080A", WINBOND_ID, W_39V080A, NULL, 1024, 64*1024,
probe_jedec, erase_chip_jedec, write_39sf020, NULL},
- {"M29F040B", ST_ID, ST_M29F040B, NULL, 512, 64 * 1024,
- probe_29f040b, erase_29f040b, write_29f040b, NULL},
+ {"M29F002B", ST_ID, ST_M29F002B, NULL, 256, 64 * 1024,
+ probe_jedec, erase_chip_jedec, write_jedec, NULL},
+ {"M29F002T/NT", ST_ID, ST_M29F002T, NULL, 256, 64 * 1024,
+ probe_jedec, erase_chip_jedec, write_jedec, NULL},
{"M29F400BT", ST_ID, ST_M29F400BT, NULL, 512, 64 * 1024,
probe_m29f400bt, erase_m29f400bt, write_linuxbios_m29f400bt, NULL},
+ {"M29F040B", ST_ID, ST_M29F040B, NULL, 512, 64 * 1024,
+ probe_29f040b, erase_29f040b, write_29f040b, NULL},
{"82802ab", 137, 173, NULL, 512, 64 * 1024,
probe_82802ab, erase_82802ab, write_82802ab, NULL},
{"82802ac", 137, 172, NULL, 1024, 64 * 1024,
OpenPOWER on IntegriCloud