diff options
-rw-r--r-- | Makefile | 2 | ||||
-rw-r--r-- | flash.h | 3 | ||||
-rw-r--r-- | flash_rom.c | 3 |
3 files changed, 7 insertions, 1 deletions
@@ -1,4 +1,4 @@ -OBJS = jedec.o sst28sf040.o am29f040b.o mx29f002.c sst39sf020.o +OBJS = jedec.o sst28sf040.o am29f040b.o mx29f002.c sst39sf020.o m29f400bt.o CC = gcc -O2 -g all: ${OBJS} @@ -32,6 +32,9 @@ struct flashchip { #define WINBOND_ID 0xDA /* Winbond Manufacture ID code */ #define W_29C020C 0x45 /* Winbond w29c020c device code*/ +#define ST_ID 0x20 +#define ST_M29F400BT 0xD5 + extern int probe_28sf040 (struct flashchip * flash); extern int erase_28sf040 (struct flashchip * flash); extern int write_28sf040 (struct flashchip * flash, char * buf); diff --git a/flash_rom.c b/flash_rom.c index 24b07a79..8f05c255 100644 --- a/flash_rom.c +++ b/flash_rom.c @@ -35,6 +35,7 @@ #include "flash.h" #include "jedec.h" +#include "m29f400bt.h" struct flashchip flashchips[] = { {"Am29F040B", AMD_ID, AM_29F040B, NULL, 512, 64*1024, @@ -51,6 +52,8 @@ struct flashchip flashchips[] = { probe_39sf020, erase_39sf020, write_39sf020}, {"W29C020C", WINBOND_ID, W_29C020C, NULL, 256, 128, probe_jedec, erase_jedec, write_jedec}, + {"M29F400BT", ST_ID, ST_M29F400BT , NULL, 512, 64*1024, + probe_m29f400bt, erase_m29f400bt, write_linuxbios_m29f400bt}, {NULL,} }; |