On 17.09.2017 03:51, email@example.com wrote:
Thank you for the help Nico.
Your advice was successful. After connecting /HOLD & /WP to 3.3V, Flashrom wrote & verified the W25Q64SIG without any error messages.
After previously checking the datasheet I thought that it was necessary to do that. But I have little experience of electronics and thought it wise to seek advice before trying, as all of the guides to programming EEPROMs with Raspberry Pi I found on the web had always left those pins unused.
Most guides probably assume that the chip is still soldered to a board. In that case the circuit on the board pulls /HOLD and /WP already.
PS. Please always keep the mailing list in CC when you respond. Some email clients have an extra button (e.g. "Reply all") for that.
On 16/09/2017 13:57, Nico Huber wrote:
On 15.09.2017 18:56, junkheap--- via flashrom wrote:
I am trying to write to a Winbond W25Q64FVSIG EEPROM (SOIC-8) using Flashrom and a Raspberry Pi 3 (running up to date Raspbian). But I receive the message "ERASE FAILED!".
I am using the shortest wires which are practical to connect to the Raspberry Pi (~10CM) and I have checked many times that I have connected to the correct GPIO pins. To make sure that there is a good connection, I abandoned the clip I was using and have soldered the EEPROM to the pads on a daughterboard (designed for the purpose). The wires I am using have factory-fitted female terminals on both ends and connect tightly to the GPIO pins on the RPI and pin head on the daughterboard.
From what I have found some people have flashed this model of EEPROM successfully using Flashrom, but others have encountered the same problem. I have not been able to find a solution. If anyone can offer assistance or advice I would me most grateful. Thank you.
I see two possible causes:
You probably didn't connect all pins of the flash chip. You have to pull /HOLD and /WP high (connect them to 3V3, preferably through some resistor) to succeed.
You run the SPI interface at a too high clock. As you didn't supply a `spispeed` argument to the linux_spi programmer, it will at run at some (to me unknown) default speed.