Hi,
I have problem with flashing W25Q256JVFQwith latest git version of flashrom.
root/Temp/flashrom/flashrom -p buspirate_spi:dev=/dev/ttyACM0 -c W25Q256.V -w Upall_VTH52X1D.20180622.bin flashrom p1.0-100-gcabe320 on Linux 4.14.0-kali3-amd64 (x86_64) flashrom is free software, get the source code at https://flashrom.org
Using clock_gettime for delay loops (clk_id: 1, resolution: 1ns). Bus Pirate firmware 6.1 and older does not support SPI speeds above 2 MHz. Limiting speed to 2 MHz. It is recommended to upgrade to firmware 6.2 or newer. Found Winbond flash chip "W25Q256.V" (32768 kB, SPI) on buspirate_spi. === This flash part has status UNTESTED for operations: PROBE READ ERASE WRITE The test status of this chip may have been updated in the latest development version of flashrom. If you are running the latest development version, please email a report to flashrom@flashrom.org if any of the above operations work correctly for you with this flash chip. Please include the flashrom log file for all operations you tested (see the man page for details), and mention which mainboard or programmer you tested in the subject line. Thanks for your help! Reading old flash chip contents... done. Erasing and writing flash chip... FAILED at 0x0025d000! Expected=0xff, Found=0xf0, failed byte count from 0x0025d000-0x0025dfff: 0x31b ERASE FAILED! Reading current flash chip contents... done. Looking for another erase function. FAILED at 0x006dc800! Expected=0xff, Found=0x48, failed byte count from 0x006d8000-0x006dffff: 0x2a7 ERASE FAILED! Reading current flash chip contents... done. Looking for another erase function. Erase/write done. Verifying flash... FAILED at 0x002bbe59! Expected=0x3b, Found=0x00, failed byte count from 0x00000000-0x01ffffff: 0xa114 Your flash chip is in an unknown state. Please report this on IRC at chat.freenode.net (channel #flashrom) or mail flashrom@flashrom.org, thanks!
Regards,
Andrej
Hello Andrej,
On 9/23/18 4:11 PM, Andrej Gornik wrote:
I have problem with flashing W25Q256JVFQwith latest git version of flashrom. [...] Erasing and writing flash chip... FAILED at 0x0025d000! Expected=0xff, Found=0xf0, failed byte count from 0x0025d000-0x0025dfff: 0x31b ERASE FAILED! Reading current flash chip contents... done. Looking for another erase function. FAILED at 0x006dc800! Expected=0xff, Found=0x48, failed byte count from 0x006d8000-0x006dffff: 0x2a7 ERASE FAILED! Reading current flash chip contents... done. Looking for another erase function. Erase/write done. Verifying flash... FAILED at 0x002bbe59! Expected=0x3b, Found=0x00, failed byte count from 0x00000000-0x01ffffff: 0xa114
As it fails at different locations, the problem seems to be arbitrarily failing reads (flashrom has to read to verify that an erase succeeded). You should try to read the whole chip and verify (flashrom -v) the result multiple times. Only if the physical setup is good enough for valid reads, flashrom can work reliably.
You can also try to reduce the `spispeed` (see manpage) to mitigate a bad connection. But as the chosen speed (2MHz) is already rather low, I would check the wiring (wires shouldn't be too long, see also [1][2]).
Hope that helps, Nico
[1] https://flashrom.org/ISP [2] https://flashrom.org/Common_problems