Few days ago i've bought new Winbond W25Q64BVDAIG flash, getting errors during erasing or writing. Read is good. W25Q64FV... is errased and flashed well. W25Q64BVDAIG flashing works fine in WindowsXP by CH341A - USB Programmer 1.30. In Willem LPT Programmer set to 3.3V works fine too. CH341A - black.
W25Q64BV... during error device stops respond with "run" led on, needs reinsert to USB to get it again.
~$ sudo flashrom --programmer ch341a_spi -r Z77EXT62.90A.bin
[sudo] пароль для xxxxxx:
flashrom v1.2 on Linux 5.10.0-17.1-liquorix-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).
Found Winbond flash chip "W25Q64.V" (8192 kB, SPI) on ch341a_spi.
Reading flash... done.
~$ sudo flashrom --programmer ch341a_spi -r Z77EXT62.90A.rom
flashrom v1.2 on Linux 5.10.0-17.1-liquorix-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).
Found Winbond flash chip "W25Q64.V" (8192 kB, SPI) on ch341a_spi.
Reading flash... done.
~$ sudo flashrom --programmer ch341a_spi -E
[sudo] пароль для xxxxxx:
flashrom v1.2 on Linux 5.10.0-17.1-liquorix-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).
Found Winbond flash chip "W25Q64.V" (8192 kB, SPI) on ch341a_spi.
Erasing and writing flash chip...
cb_out: error: LIBUSB_TRANSFER_TIMED_OUT
cb_in: error: LIBUSB_TRANSFER_TIMED_OUT
ch341a_spi_spi_send_command: Failed to write 36 bytes
RDSR failed!
cb_out: error: LIBUSB_TRANSFER_TIMED_OUT
cb_in: error: LIBUSB_TRANSFER_TIMED_OUT
cb_in: error: LIBUSB_TRANSFER_TIMED_OUT
cb_in: error: LIBUSB_TRANSFER_TIMED_OUT
cb_in: error: LIBUSB_TRANSFER_TIMED_OUT
cb_in: error: LIBUSB_TRANSFER_TIMED_OUT
cb_in: error: LIBUSB_TRANSFER_TIMED_OUT
cb_in: error: LIBUSB_TRANSFER_TIMED_OUT
cb_in: error: LIBUSB_TRANSFER_TIMED_OUT
cb_in: error: LIBUSB_TRANSFER_TIMED_OUT
cb_in: error: LIBUSB_TRANSFER_TIMED_OUT
cb_in: error: LIBUSB_TRANSFER_TIMED_OUT
cb_in: error: LIBUSB_TRANSFER_TIMED_OUT
cb_in: error: LIBUSB_TRANSFER_TIMED_OUT
cb_in: error: LIBUSB_TRANSFER_TIMED_OUT
cb_in: error: LIBUSB_TRANSFER_TIMED_OUT
cb_in: error: LIBUSB_TRANSFER_TIMED_OUT
cb_in: error: LIBUSB_TRANSFER_TIMED_OUT
cb_in: error: LIBUSB_TRANSFER_TIMED_OUT
cb_in: error: LIBUSB_TRANSFER_TIMED_OUT
cb_in: error: LIBUSB_TRANSFER_TIMED_OUT
cb_in: error: LIBUSB_TRANSFER_TIMED_OUT
cb_in: error: LIBUSB_TRANSFER_TIMED_OUT
cb_in: error: LIBUSB_TRANSFER_TIMED_OUT
cb_in: error: LIBUSB_TRANSFER_TIMED_OUT
cb_in: error: LIBUSB_TRANSFER_TIMED_OUT
ch341a_spi_spi_send_command: Failed to write 4265 bytes
Verification impossible because read failed at 0x17000 (len 0x1000)
ERASE FAILED!
Looking for another erase function.
cb_in: error: LIBUSB_TRANSFER_TIMED_OUT
cb_in: error: LIBUSB_TRANSFER_TIMED_OUT
cb_in: error: LIBUSB_TRANSFER_TIMED_OUT
cb_in: error: LIBUSB_TRANSFER_TIMED_OUT
cb_in: error: LIBUSB_TRANSFER_TIMED_OUT
cb_in: error: LIBUSB_TRANSFER_TIMED_OUT
cb_in: error: LIBUSB_TRANSFER_TIMED_OUT
cb_out: error: LIBUSB_TRANSFER_TIMED_OUT
cb_in: error: LIBUSB_TRANSFER_TIMED_OUT
ch341a_spi_spi_send_command: Failed to write 34 bytes
spi_write_cmd failed during command execution at address 0x0
cb_out: error: LIBUSB_TRANSFER_TIMED_OUT
cb_in: error: LIBUSB_TRANSFER_TIMED_OUT
ch341a_spi_spi_send_command: Failed to write 36 bytes
RDSR failed!
Looking for another erase function.
cb_out: error: LIBUSB_TRANSFER_TIMED_OUT
cb_in: error: LIBUSB_TRANSFER_TIMED_OUT
ch341a_spi_spi_send_command: Failed to write 34 bytes
spi_write_cmd failed during command execution at address 0x0
cb_out: error: LIBUSB_TRANSFER_TIMED_OUT
cb_in: error: LIBUSB_TRANSFER_TIMED_OUT
ch341a_spi_spi_send_command: Failed to write 36 bytes
RDSR failed!
Looking for another erase function.
cb_out: error: LIBUSB_TRANSFER_TIMED_OUT
cb_in: error: LIBUSB_TRANSFER_TIMED_OUT
ch341a_spi_spi_send_command: Failed to write 34 bytes
spi_simple_write_cmd failed during command execution
cb_out: error: LIBUSB_TRANSFER_TIMED_OUT
cb_in: error: LIBUSB_TRANSFER_TIMED_OUT
ch341a_spi_spi_send_command: Failed to write 36 bytes
RDSR failed!
Looking for another erase function.
cb_out: error: LIBUSB_TRANSFER_TIMED_OUT
cb_in: error: LIBUSB_TRANSFER_TIMED_OUT
ch341a_spi_spi_send_command: Failed to write 34 bytes
spi_simple_write_cmd failed during command execution
cb_out: error: LIBUSB_TRANSFER_TIMED_OUT
cb_in: error: LIBUSB_TRANSFER_TIMED_OUT
ch341a_spi_spi_send_command: Failed to write 36 bytes
RDSR failed!
Looking for another erase function.
Looking for another erase function.
Looking for another erase function.
No usable erase functions left.
FAILED!
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!
cb_out: error: LIBUSB_TRANSFER_TIMED_OUT
enable_pins: Failed to write 4 bytes
Could not disable output pins.
~$ sudo flashrom --programmer ch341a_spi -w Z77EXT62.90A.bin -c "W25Q64.V"
flashrom v1.2 on Linux 5.10.0-17.1-liquorix-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).
Found Winbond flash chip "W25Q64.V" (8192 kB, SPI) on ch341a_spi.
Reading old flash chip contents... done.
Erasing and writing flash chip...
cb_out: error: LIBUSB_TRANSFER_TIMED_OUT
cb_in: error: LIBUSB_TRANSFER_TIMED_OUT
ch341a_spi_spi_send_command: Failed to write 36 bytes
RDSR failed!
cb_out: error: LIBUSB_TRANSFER_TIMED_OUT
cb_in: error: LIBUSB_TRANSFER_TIMED_OUT
ch341a_spi_spi_send_command: Failed to write 34 bytes
spi_write_cmd failed during command execution at address 0x1500
cb_out: error: LIBUSB_TRANSFER_TIMED_OUT
cb_in: error: LIBUSB_TRANSFER_TIMED_OUT
ch341a_spi_spi_send_command: Failed to write 36 bytes
RDSR failed!
Reading current flash chip contents...
cb_out: error: LIBUSB_TRANSFER_TIMED_OUT
cb_in: error: LIBUSB_TRANSFER_TIMED_OUT
cb_in: error: LIBUSB_TRANSFER_TIMED_OUT
cb_in: error: LIBUSB_TRANSFER_TIMED_OUT
cb_in: error: LIBUSB_TRANSFER_TIMED_OUT
cb_in: error: LIBUSB_TRANSFER_TIMED_OUT
cb_in: error: LIBUSB_TRANSFER_TIMED_OUT
cb_in: error: LIBUSB_TRANSFER_TIMED_OUT
cb_in: error: LIBUSB_TRANSFER_TIMED_OUT
cb_in: error: LIBUSB_TRANSFER_TIMED_OUT
cb_in: error: LIBUSB_TRANSFER_TIMED_OUT
cb_in: error: LIBUSB_TRANSFER_TIMED_OUT
cb_in: error: LIBUSB_TRANSFER_TIMED_OUT
cb_in: error: LIBUSB_TRANSFER_TIMED_OUT
cb_in: error: LIBUSB_TRANSFER_TIMED_OUT
cb_in: error: LIBUSB_TRANSFER_TIMED_OUT
cb_in: error: LIBUSB_TRANSFER_TIMED_OUT
cb_in: error: LIBUSB_TRANSFER_TIMED_OUT
cb_in: error: LIBUSB_TRANSFER_TIMED_OUT
cb_in: error: LIBUSB_TRANSFER_TIMED_OUT
cb_in: error: LIBUSB_TRANSFER_TIMED_OUT
cb_in: error: LIBUSB_TRANSFER_TIMED_OUT
cb_in: error: LIBUSB_TRANSFER_TIMED_OUT
cb_in: error: LIBUSB_TRANSFER_TIMED_OUT
cb_in: error: LIBUSB_TRANSFER_TIMED_OUT
cb_in: error: LIBUSB_TRANSFER_TIMED_OUT
ch341a_spi_spi_send_command: Failed to write 4265 bytes
Can't read anymore! Aborting.
FAILED!
Uh oh. Erase/write failed. Checking if anything has changed.
Reading current flash chip contents... ch341a_spi_spi_send_command: failed to submit IN transfer: LIBUSB_ERROR_BUSY
ch341a_spi_spi_send_command: Failed to read 4100 bytes
cb_in: error: LIBUSB_TRANSFER_TIMED_OUT
cb_in: error: LIBUSB_TRANSFER_TIMED_OUT
cb_in: error: LIBUSB_TRANSFER_TIMED_OUT
cb_in: error: LIBUSB_TRANSFER_TIMED_OUT
cb_in: error: LIBUSB_TRANSFER_TIMED_OUT
cb_in: error: LIBUSB_TRANSFER_TIMED_OUT
cb_in: error: LIBUSB_TRANSFER_TIMED_OUT
Can't even read anymore!
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!
cb_out: error: LIBUSB_TRANSFER_TIMED_OUT
enable_pins: Failed to write 4 bytes
Could not disable output pins.W25Q64FV... works just fine.
~$ sudo flashrom --programmer ch341a_spi -E
[sudo] пароль для xxxxxx:
flashrom v1.2 on Linux 5.10.0-17.1-liquorix-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).
Found Winbond flash chip "W25Q64.V" (8192 kB, SPI) on ch341a_spi.
Erasing and writing flash chip... Erase/write done.
~$ sudo flashrom --programmer ch341a_spi -w Z97EX62_80.bin -c "W25Q64.V"
flashrom v1.2 on Linux 5.10.0-17.1-liquorix-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).
Found Winbond flash chip "W25Q64.V" (8192 kB, SPI) on ch341a_spi.
Reading old flash chip contents... done.
Erasing and writing flash chip... Erase/write done.
Verifying flash... VERIFIED.`
Both chips are found as a "W25Q64.V".
Best regards,
Alexey