<div dir="ltr">I re-seated my test clips and I tried again. The results were quite strange:<br><div><div><br><b>With the patched flashrom, using S25FL128P......1<br># /usr/src/flashrompatch/flashrom -p usbblaster_spi -o write1.log -c "S25FL128P......1" -w rog.bin</b><br>
flashrom v0.9.7-r1806 on Linux 3.2.0-4-686-pae (i686)<br>flashrom is free software, get the source code at <a href="http://www.flashrom.org">http://www.flashrom.org</a><br><br>Calibrating delay loop... OK.<br><span style="color:rgb(255,0,0)">No EEPROM/flash device found.</span><br>
Note: flashrom can never write if the flash chip isn't found automatically.<br><br><b>With the patched flashrom using S25FL128P......0<br># /usr/src/flashrompatch/flashrom -p usbblaster_spi -o write1.log -c "S25FL128P......0" -w rog.bin</b><br>
flashrom v0.9.7-r1806 on Linux 3.2.0-4-686-pae (i686)<br>flashrom is free software, get the source code at <a href="http://www.flashrom.org">http://www.flashrom.org</a><br><br>Calibrating delay loop... OK.<br>Found Spansion flash chip "S25FL128P......0" (16384 kB, SPI) on usbblaster_spi.<br>
===<br>This flash part has status UNTESTED for operations: PROBE READ ERASE WRITE<br>The test status of this chip may have been updated in the latest development<br>version of flashrom. If you are running the latest development version,<br>
please email a report to <a href="mailto:flashrom@flashrom.org">flashrom@flashrom.org</a> if any of the above operations<br>work correctly for you with this flash part. Please include the flashrom<br>output with the additional -V option for all operations you tested (-V, -Vr,<br>
-VE, -Vw), and mention which mainboard or programmer you tested.<br>Please mention your board in the subject line. Thanks for your help!<br>Reading old flash chip contents... done.<br>Erasing and writing flash chip... FAILED at 0x00000000! Expected=0xff, Found=0x00, failed byte count from 0x00000000-0x0003ffff: 0x3<br>
ERASE FAILED!<br>Reading current flash chip contents... done. Erase/write done.<br>Verifying flash... FAILED at 0x00000000! Expected=0xea, Found=0x00, failed byte count from 0x00000000-0x00ffffff: 0xeff72f<br>Your flash chip is in an unknown state.<br>
Please report this on IRC at <a href="http://chat.freenode.net">chat.freenode.net</a> (channel #flashrom) or<br>mail <a href="mailto:flashrom@flashrom.org">flashrom@flashrom.org</a>, thanks!<br><br><b>With the patched flashrom using S25FL128P......1 again</b><br>
<b># /usr/src/flashrompatch/flashrom -p usbblaster_spi -o write2.log -c "S25FL128P......1" -w rog.bin<br></b>flashrom v0.9.7-r1806 on Linux 3.2.0-4-686-pae (i686)<br>flashrom is free software, get the source code at <a href="http://www.flashrom.org">http://www.flashrom.org</a><br>
<br>Calibrating delay loop... OK.<br>Found Spansion flash chip "S25FL128P......1" (16384 kB, SPI) on usbblaster_spi.<br>===<br>This flash part has status UNTESTED for operations: PROBE READ ERASE WRITE<br>The test status of this chip may have been updated in the latest development<br>
version of flashrom. If you are running the latest development version,<br>please email a report to <a href="mailto:flashrom@flashrom.org">flashrom@flashrom.org</a> if any of the above operations<br>work correctly for you with this flash part. Please include the flashrom<br>
output with the additional -V option for all operations you tested (-V, -Vr,<br>-VE, -Vw), and mention which mainboard or programmer you tested.<br>Please mention your board in the subject line. Thanks for your help!<br>Reading old flash chip contents... done.<br>
Erasing and writing flash chip... Erase/write done.<br><b>Verifying flash... VERIFIED.</b><br><br></div><div>This seems quite random, so I am not sure what's going on.<br></div><div>Before the first operation, I did a full erase, would the detect not work if the chip is erased ?<br>
<br></div><div>Liviu<br></div><div><br></div></div></div><div class="gmail_extra"><br><br><div class="gmail_quote">On Fri, Jun 13, 2014 at 8:06 AM, Liviu Toma <span dir="ltr"><<a href="mailto:liviu.toma@gmail.com" target="_blank">liviu.toma@gmail.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div><div>Hi Stefan,<br><br></div>Thanks, I will test again tonight when I get home. The content of the rog.bin was the same for both attempts.<span class="HOEnZb"><font color="#888888"><br>
<br></font></span></div><span class="HOEnZb"><font color="#888888">Liviu<br></font></span></div><div class="HOEnZb"><div class="h5"><div class="gmail_extra"><br><br><div class="gmail_quote">
On Fri, Jun 13, 2014 at 4:41 AM, Stefan Tauner <span dir="ltr"><<a href="mailto:stefan.tauner@alumni.tuwien.ac.at" target="_blank">stefan.tauner@alumni.tuwien.ac.at</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">

Thanks for the test, there are two issues here. One is that I swapped<br>
the erase block sizes of the P models. This is clearly shown in your<br>
logs.<br>
The ...0 model should have 64 kB erase blocks, but does not:<br>
> Trying erase function 0... 0x000000-0x03ffff:EFAILED at 0x00010000! Expected=0xff, Found=0xe5<br>
0x03ffff is 262143 in decimal... I have fixed that locally, but this is<br>
not the main problem here.<br>
<br>
The chip erase and the subsequent write should have worked, and your<br>
second try with the definition of the ...1 model too (because it<br>
contains the right block size). But both failed and I don't understand<br>
why yet. The first failed byte is equal in both cases but not all of<br>
them are (a different number of bytes fail in the two cases). This<br>
indicates that the behavior might be indeterministic. The contents of<br>
the "rog.bin" file were equal for both tries, right?<br>
What happens if you retry the second test again?<br>
/usr/src/flashrompatch/flashrom -p usbblaster_spi -o write2.log -c S25FL128P......1 -w rog.bin<br>
If you can not reproduce exactly the same output, i.e.<br>
Verifying flash... FAILED at 0x0000005b! Expected=0xd3, Found=0xfb, failed byte count from 0x00000000-0x00ffffff: 0xaf66ea<br>
Then we are on the right track. In that case I would ask you how the<br>
chip is connected exactly, especially how WP# and HOLD# are driven.<br>
<br>
PS: You dont need to install flashrom after recompiling. You can<br>
execute the built binary in the source directory (make; ./flashrom ...).<br>
<div><div><br>
--<br>
Kind regards/Mit freundlichen Grüßen, Stefan Tauner<br>
</div></div></blockquote></div><br></div>
</div></div></blockquote></div><br></div>