On 30.12.2007 21:09, Markus wrote:
Am Tue, 18 Dec 2007 00:53:37 +0100 schrieb Carl-Daniel Hailfinger c-d.hailfinger.devel.2006@gmx.net:
On 24.09.2007 00:38, Carl-Daniel Hailfinger wrote:
On 31.08.2007 21:40, Markus Boas wrote:
I send a patch to add support for the EON EN29F002NT Write, read works.
Sorry, but the data sheet says you're only doing half of the identification and this will match all EON chips.
Can you test this patch? If identification fails, can you post the output of "flashrom --verbose" ? Thanks!
Geode:~# ./flashrom --verbose Calibrating delay loop... 27M loops per second. OK. No LinuxBIOS table found. Found chipset "CS5530/CS5530A", enabling flash write... OK. Probing for Am29F040B, 512 KB probe_29f040b: id1 0x25, id2 0x9f Probing for Am29LV040B, 512 KB probe_29f040b: id1 0x25, id2 0x9f Probing for Am29F016D, 2048 KB probe_29f040b: id1 0x25, id2 0x9f Probing for AE49F2008, 256 KB probe_jedec: id1 0x7f1c, id2 0x7f92 Probing for At29C040A, 512 KB probe_jedec: id1 0x7f1c, id2 0x7f92 Probing for At29C020, 256 KB probe_jedec: id1 0x7f1c, id2 0x7f92 Probing for At49F002(N), 256 KB probe_jedec: id1 0x7f1c, id2 0x7f92 Probing for At49F002(N)T, 256 KB probe_jedec: id1 0x7f1c, id2 0x7f92 Probing for EN29F002AT, 256 KB probe_jedec: id1 0x7f1c, id2 0x7f92 EN29F002AT found at physical address 0xfffc0000. Flash part is EN29F002AT (256 KB). No operations were specified.
Thanks! So the code works exactly as I thought.
The Chip is an EN29F002NT.
What do you think about this patch?
Unfortunately, EN29F002T, EN29F002AT, EN29F002ANT, EN29F002NT all have exactly the same ID. Improve model number printing. Add EN29F002(A)(N)B support while I'm at it. Signed-off-by: Carl-Daniel Hailfinger c-d.hailfinger.devel.2006@gmx.net
Index: flashrom-eon/flash.h =================================================================== --- flashrom-eon/flash.h (Revision 3030) +++ flashrom-eon/flash.h (Arbeitskopie) @@ -109,8 +109,8 @@ #define EN_29F040A 0x7F04 #define EN_29LV010 0x7F6E #define EN_29LV040A 0x7F4F /* EN_29LV040(A) */ -#define EN_29F002AT 0x7F92 -#define EN_29F002AB 0x7F97 +#define EN_29F002T 0x7F92 +#define EN_29F002B 0x7F97
#define FUJITSU_ID 0x04 /* Fujitsu */ /* MBM29F400TC_STRANGE has a value not mentioned in the data sheet and we Index: flashrom-eon/flashchips.c =================================================================== --- flashrom-eon/flashchips.c (Revision 3030) +++ flashrom-eon/flashchips.c (Arbeitskopie) @@ -42,9 +42,10 @@ probe_jedec, erase_chip_jedec, write_jedec}, {"At49F002(N)T",ATMEL_ID, AT_49F002NT, 256, 256, probe_jedec, erase_chip_jedec, write_jedec}, - /* The EN29F002AT can do byte program at arbitrary boundaries. */ - {"EN29F002AT", EON_ID, EN_29F002AT, 256, 256, + {"EN29F002(A)(N)T", EON_ID, EN_29F002T, 256, 256, probe_jedec, erase_chip_jedec, write_jedec}, + {"EN29F002(A)(N)B", EON_ID, EN_29F002B, 256, 256, + probe_jedec, erase_chip_jedec, write_jedec}, {"MBM29F400TC", FUJITSU_ID, MBM29F400TC_STRANGE, 512, 64 * 1024, probe_m29f400bt, erase_m29f400bt, write_linuxbios_m29f400bt}, {"MX29F002", MX_ID, MX_29F002, 256, 64 * 1024,
read, write and verify don't realy work. But i'm think the chip is destroyed. If i belief my memory, i was able to write once the chip, no more afterwards.
Maybe some block protection bits are set in the chip? We don't handle protection bits for any EON chip right now.
Regards, Carl-Daniel