On Wed, 8 Jul 2015 08:17:02 -0300 Oscar Enrique Goñi ogoni@redimec.com.ar wrote:
Hi Stefan, thanks for your help! I have updated with those packages and now I can recognize the chip. However, I have an issue while trying to write the flash, here is the basic output:
Calibrating delay loop... OK. Found PMC flash chip "Pm25LD512(C)" (64 kB, SPI) on ft2232_spi. Block protection could not be disabled! Reading old flash chip contents... done. Erasing and writing flash chip...
and never progress. Moreover, no signals are present on the PINs
and this is a part of the verbose output:
Found PMC flash chip "Pm25LD512(C)" (64 kB, SPI). Some block protection in effect, disabling... Block protection could not be disabled! Chip status register is 0x20. Chip status register: Status Register Write Disable (SRWD, SRP, ...) is not set Chip status register: Bit 6 is not set Chip status register: Bit 5 is set Chip status register: Block Protect 2 (BP2) is not set Chip status register: Block Protect 1 (BP1) is not set Chip status register: Block Protect 0 (BP0) is not set Chip status register: Write Enable Latch (WEL) is not set Chip status register: Write In Progress (WIP/BUSY) is not set Reading old flash chip contents... done. Erasing and writing flash chip... Trying erase function 0... 0x000000-0x000fff:E
Do you have any idea of the issue?
Hi,
according to the datasheet of your flashchip (it is a non-C version BTW), that bit #5 should always read as 0. However, flashrom should not care about it (and the message about failing to disable the block protection is a bug I need to investigate later), so that should not be the cause of the problem. The real problem is a loop in flashrom that queries the flash chip's status register after initiating an erase. We currently wait indefinitely for the flash chip to signal that it is done. Some chips never do that if they are broken and then flashrom keeps running till killed.
There are a few hacks you could try, but you would need to modify the source of flashrom and recompile it (it is not very hard but you should be familiar with the command line). However, I fear that it won't help you because the chip is broken. This could also explain why the update process failed. You could replace the flash chip with a similar model if you are able to solder it in place.