Hi,
I am attempting to write a Libreboot ROM to my BIOS chip. The chip reports as follows:
sudo flashrom -p linux_spi:dev=/dev/spidev0.0
'Found Winbond flash chip "W25Q16.V" (2048 kB, SPI) on linux_spi.'
All of the online guides show reading the chip before attempting to flash, and confirming that the checksums match. However, when reading the contents of the flash chip, the checksums vary wildly. When attempting to flash the chip with a Libreboot ROM for the board, the erase function fails on all attempts as follows:
sudo flashrom --programmer linux_spi:dev=/dev/spidev0.0 --write kgpe-d16_ukqwerty_txtmode.rom flashrom p1.0-141-g9cecc7e on Linux 4.14.79+ (armv6l) flashrom is free software, get the source code at https://flashrom.org
Using clock_gettime for delay loops (clk_id: 1, resolution: 1ns). Using default 2000kHz clock. Use 'spispeed' parameter to override. Found Winbond flash chip "W25Q16.V" (2048 kB, SPI) on linux_spi. Reading old flash chip contents... done. Erasing and writing flash chip... FAILED at 0x00000000! Expected=0xff, Found=0x00, failed byte count from 0x00000000-0x00000fff: 0x1000 ERASE FAILED! Reading current flash chip contents... done. Looking for another erase function. FAILED at 0x000007fd! Expected=0xff, Found=0xfe, failed byte count from 0x00000000-0x00007fff: 0x6218 ERASE FAILED! Reading current flash chip contents... done. Looking for another erase function. FAILED at 0x000001bb! Expected=0xff, Found=0xfc, failed byte count from 0x00000000-0x0000ffff: 0xbde4 ERASE FAILED! Reading current flash chip contents... done. Looking for another erase function. FAILED at 0x00000000! Expected=0xff, Found=0x00, failed byte count from 0x00000000-0x001fffff: 0x18a7c0 ERASE FAILED! Reading current flash chip contents... done. Looking for another erase function. FAILED at 0x00000111! Expected=0xff, Found=0xc0, failed byte count from 0x00000000-0x001fffff: 0x18af13 ERASE FAILED! Reading current flash chip contents... done. Looking for another erase function. Looking for another erase function. Looking for another erase function. No usable erase functions left. FAILED! Uh oh. Erase/write failed. Checking if anything has changed. Reading current flash chip contents... done. Apparently at least some data has changed. 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!
I am trying to determine whether I am doing something incorrectly, or whether the chip is unserviceable and needs to be replaced.
Any help/hints would be greatly appreciated!
Best Regards,
Joshua Aspinall.