Hi,
On Sat, Apr 05, 2008 at 12:25:33PM +0530, malatesh kamatad wrote:
But the content after writing by using below command shows result like this....
I suggest you have a look at the flashrom documentation. There is no point in running flashrom like that.
[root@localhost ~]# /usr/local/sbin/flashrom -r | hexdump
0000000 6143 696c 7262 7461 6e69 2067 6564 616c 0000010 2079 6f6c 706f 2e2e 202e 4b4f 0a2e 6f4e 0000020 6320 726f 6265 6f6f 2074 6174 6c62 2065 0000030 6f66 6e75 2e64 460a 756f 646e 6320 6968 0000040 7370 7465 2220 4956 2041 5456 3238 3733 0000050 2c22 6520 616e 6c62 6e69 2067 6c66 7361 0000060 2068 7277 7469 2e65 2e2e 4f20 2e4b 530a 0000070 5453 3934 464c 3030 4134 422f 6620 756f 0000080 646e 6120 2074 6870 7379 6369 6c61 6120 0000090 6464 6572 7373 3020 6678 6666 3038 3030 00000a0 2e30 460a 616c 6873 7020 7261 2074 7369 00000b0 5320 5453 3934 464c 3030 4134 422f 2820 00000c0 3135 2032 424b 2e29 450a 7272 726f 203a 00000d0 6f4e 6620 6c69 6e65 6d61 2065 7073 6365 00000e0 6669 6569 2e64 000a
The following is the cleartext of the above hexdump:
6143 696c 7262 7461 6e69 2067 6564 616c Calibrating dela 2079 6f6c 706f 2e2e 202e 4b4f 0a2e 6f4e y loop... OK. No 6320 726f 6265 6f6f 2074 6174 6c62 2065 coreboot table 6f66 6e75 2e64 460a 756f 646e 6320 6968 found. Found chi 7370 7465 2220 4956 2041 5456 3238 3733 pset "VIA VT8237 2c22 6520 616e 6c62 6e69 2067 6c66 7361 ", enabling flas 2068 7277 7469 2e65 2e2e 4f20 2e4b 530a h write... OK. S 5453 3934 464c 3030 4134 422f 6620 756f ST49LF004A/B fou 646e 6120 2074 6870 7379 6369 6c61 6120 nd at physical a 6464 6572 7373 3020 6678 6666 3038 3030 ddress 0xfff8000 2e30 460a 616c 6873 7020 7261 2074 7369 0. Flash part is 5320 5453 3934 464c 3030 4134 422f 2820 SST49LF004A/B ( 3135 2032 424b 2e29 450a 7272 726f 203a 512 KB). Error: 6f4e 6620 6c69 6e65 6d61 2065 7073 6365 No filename spec 6669 6569 2e64 000a ified.
flashrom has not performed any action.
I do not think it is possible for flashrom to write data it has read from the flash chip to stdout. I also don't think it would be useful.
But using only hexdump i got result like this ...
[root@localhost ~]# hexdump sst_after_write05.bin 0000000 ffff ffff ffff ffff ffff ffff ffff ffff
0080000
This shows that writing fails completely.
So the problem is within the write algorithm that flashrom uses with this flash chip. Feel free to compare the code in flashrom with the programming algorithm specified in the flash chip datasheet. Best case you only have to pick another write function, but my guess is that some code needs to change.
Oh, by the way, erasing may also not work properly for this chip, if you have never successfully programmed anything into the SST chip then we don't know for sure if erase works or not. They come erased (all 0xff) from factory so failure to erase using flashrom would not be obvious. Verifying this is a good start, and easier than writing. But it also requires another, working, method of writing to the SST chip. (Flash programmer, another mainboard, etc.)
//Peter