On Tue, 27 Jan 2015 22:36:03 +0200 Tudoran Mihail mihail.tudoran@gmail.com wrote:
Hello,
I am encountering some issues trying to read a Pm25LV512 SPI flash from a small LCD monitor, really got stuck at this point.
Hardware:
- Pm25LV512 attached to a Weltrend WT8871 video IC
- Arduino UNO R3 with 16u2 USB<>Serial converter
- CD4050 to convert 5v to 3v3
- Used the schematic provided on http://flashrom.org/Serprog/Arduino_flasher
to interface the chip
- Tried "in-circuit" programming without removing the chip from the board
- Wire length of less than 8cm.
Software:
- Latest serprog-duino from git
- Tried with flashrom v0.9.6.1-r1563
- And with flashrom v0.9.7-r1711
- Ubuntu 14.04 64bit
I really appreciate any help I could get and can provide any info/logs needed.
The result looks as if you are reading random data... either your connections are wrong/bad, or the board is disturbing the communication on the SPI bus. See also http://flashrom.org/ISP
Hi Stefan,
I removed the chip from the board, now it is connected directly to the CD4050, i triple checked all the wiring. I think it should be something wrong with the arduino, I know the 25LV512 is functional because the LCD boots fine with it.
I also tried connected it directly to the Arduino, without the CD4050 converter, still the same. I did not damage the chip, the LCD still boots with it.
Thanks !!!
sudo flashrom -p serprog:dev=/dev/ttyACM0:115200 -VVV flashrom v0.9.6.1-r1563 on Linux 3.13.0-43-generic (x86_64) flashrom is free software, get the source code at http://www.flashrom.org
flashrom was built with libpci 3.1.9, GCC 4.7.1, little endian Command line (3 args): flashrom -p serprog:dev=/dev/ttyACM0:115200 -VVV Calibrating delay loop... OS timer resolution is 1 usecs, 1465M loops per second, 10 myus = 10 us, 100 myus = 106 us, 1000 myus = 1002 us, 10000 myus = 10053 us, 4 myus = 4 us, OK. Initializing serprog programmer serprog: connected - attempting to synchronize ... serprog: Synchronized serprog: Interface version ok. serprog: Bus support: parallel=off, LPC=off, FWH=off, SPI=on Warning: Automatic command availability check failed for cmd 0x8 - won't execute cmd Warning: Automatic command availability check failed for cmd 0x11 - won't execute cmd serprog: Programmer name is "serprog-duino" serprog: Serial buffer size is 65535 The following protocols are supported: SPI. Probing for AMIC A25L05PT, 64 kB: serprog_spi_send_command, writecnt=1, readcnt=4 RDID returned 0xff 0xff 0xff 0xff. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0xff, id2 0xffff Probing for AMIC A25L05PU, 64 kB: serprog_spi_send_command, writecnt=1, readcnt=4 RDID returned 0xff 0xff 0xff 0xff. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0xff, id2 0xffff Probing for AMIC A25L10PT, 128 kB: serprog_spi_send_command, writecnt=1, readcnt=4 RDID returned 0xff 0xff 0xff 0xff. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0xff, id2 0xffff Probing for AMIC A25L10PU, 128 kB: serprog_spi_send_command, writecnt=1, readcnt=4 RDID returned 0xff 0xff 0xff 0xff. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0xff, id2 0xffff Probing for AMIC A25L20PT, 256 kB: serprog_spi_send_command, writecnt=1, readcnt=4 RDID returned 0xff 0xff 0xff 0xff. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0xff, id2 0xffff Probing for AMIC A25L20PU, 256 kB: serprog_spi_send_command, writecnt=1, readcnt=4 RDID returned 0xff 0xff 0xff 0xff. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0xff, id2 0xffff Probing for AMIC A25L40PT, 512 kB: serprog_spi_send_command, writecnt=1, readcnt=4 RDID returned 0xff 0xff 0xff 0xff. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0xff, id2 0xffff Probing for AMIC A25L40PU, 512 kB: serprog_spi_send_command, writecnt=1, readcnt=4 RDID returned 0xff 0xff 0xff 0xff. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0xff, id2 0xffff Probing for AMIC A25L80P, 1024 kB: serprog_spi_send_command, writecnt=1, readcnt=4 RDID returned 0xff 0xff 0xff 0xff. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0xff, id2 0xffff Probing for AMIC A25L16PT, 2048 kB: serprog_spi_send_command, writecnt=1, readcnt=4 RDID returned 0xff 0xff 0xff 0xff. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0xff, id2 0xffff Probing for AMIC A25L16PU, 2048 kB: serprog_spi_send_command, writecnt=1, readcnt=4 RDID returned 0xff 0xff 0xff 0xff. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0xff, id2 0xffff Probing for AMIC A25L512, 64 kB: serprog_spi_send_command, writecnt=1, readcnt=3 RDID returned 0xff 0xff 0xff. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0xff, id2 0xffff Probing for AMIC A25L010, 128 kB: serprog_spi_send_command, writecnt=1, readcnt=3 RDID returned 0xff 0xff 0xff. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0xff, id2 0xffff Probing for AMIC A25L020, 256 kB: serprog_spi_send_command, writecnt=1, readcnt=3 RDID returned 0xff 0xff 0xff. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0xff, id2 0xffff Probing for AMIC A25L040, 512 kB: serprog_spi_send_command, writecnt=1, readcnt=3 RDID returned 0xff 0xff 0xff. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0xff, id2 0xffff Probing for AMIC A25L080, 1024 kB: serprog_spi_send_command, writecnt=1, readcnt=3 RDID returned 0xff 0xff 0xff. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0xff, id2 0xffff Probing for AMIC A25L016, 2048 kB: serprog_spi_send_command, writecnt=1, readcnt=3 RDID returned 0xff 0xff 0xff. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0xff, id2 0xffff Probing for AMIC A25L032, 4096 kB: serprog_spi_send_command, writecnt=1, readcnt=3 RDID returned 0xff 0xff 0xff. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0xff, id2 0xffff Probing for AMIC A25LQ032, 4096 kB: serprog_spi_send_command, writecnt=1, readcnt=3 RDID returned 0xff 0xff 0xff. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0xff, id2 0xffff Probing for Atmel AT25DF021, 256 kB: serprog_spi_send_command, writecnt=1, readcnt=3 RDID returned 0xff 0xff 0xff. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0xff, id2 0xffff Probing for Atmel AT25DF041A, 512 kB: serprog_spi_send_command, writecnt=1, readcnt=3 RDID returned 0xff 0xff 0xff. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0xff, id2 0xffff Probing for Atmel AT25DF081, 1024 kB: serprog_spi_send_command, writecnt=1, readcnt=3 RDID returned 0xff 0xff 0xff. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0xff, id2 0xffff Probing for Atmel AT25DF081A, 1024 kB: serprog_spi_send_command, writecnt=1, readcnt=3 RDID returned 0xff 0xff 0xff. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0xff, id2 0xffff Probing for Atmel AT25DF161, 2048 kB: serprog_spi_send_command, writecnt=1, readcnt=3 RDID returned 0xff 0xff 0xff. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0xff, id2 0xffff Probing for Atmel AT25DF321, 4096 kB: serprog_spi_send_command, writecnt=1, readcnt=3 RDID returned 0xff 0xff 0xff. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0xff, id2 0xffff Probing for Atmel AT25DF321A, 4096 kB: serprog_spi_send_command, writecnt=1, readcnt=3 RDID returned 0xff 0xff 0xff. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0xff, id2 0xffff Probing for Atmel AT25DF641(A), 8192 kB: serprog_spi_send_command, writecnt=1, readcnt=3 RDID returned 0xff 0xff 0xff. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0xff, id2 0xffff Probing for Atmel AT25DQ161, 2048 kB: serprog_spi_send_command, writecnt=1, readcnt=3 RDID returned 0xff 0xff 0xff. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0xff, id2 0xffff Probing for Atmel AT25F512B, 64 kB: serprog_spi_send_command, writecnt=1, readcnt=3 RDID returned 0xff 0xff 0xff. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0xff, id2 0xffff Probing for Atmel AT25FS010, 128 kB: serprog_spi_send_command, writecnt=1, readcnt=3 RDID returned 0xff 0xff 0xff. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0xff, id2 0xffff Probing for Atmel AT25FS040, 512 kB: serprog_spi_send_command, writecnt=1, readcnt=3 RDID returned 0xff 0xff 0xff. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0xff, id2 0xffff Probing for Atmel AT26DF041, 512 kB: serprog_spi_send_command, writecnt=1, readcnt=3 RDID returned 0xff 0xff 0xff. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0xff, id2 0xffff Probing for Atmel AT26DF081A, 1024 kB: serprog_spi_send_command, writecnt=1, readcnt=3 RDID returned 0xff 0xff 0xff. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0xff, id2 0xffff Probing for Atmel AT26DF161, 2048 kB: serprog_spi_send_command, writecnt=1, readcnt=3 RDID returned 0xff 0xff 0xff. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0xff, id2 0xffff Probing for Atmel AT26DF161A, 2048 kB: serprog_spi_send_command, writecnt=1, readcnt=3 RDID returned 0xff 0xff 0xff. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0xff, id2 0xffff Probing for Atmel AT26F004, 512 kB: serprog_spi_send_command, writecnt=1, readcnt=3 RDID returned 0xff 0xff 0xff. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0xff, id2 0xffff Probing for Atmel AT45CS1282, 16896 kB: serprog_spi_send_command, writecnt=1, readcnt=3 RDID returned 0xff 0xff 0xff. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0xff, id2 0xffff Probing for Atmel AT45DB011D, 128 kB: serprog_spi_send_command, writecnt=1, readcnt=3 RDID returned 0xff 0xff 0xff. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0xff, id2 0xffff Probing for Atmel AT45DB021D, 256 kB: serprog_spi_send_command, writecnt=1, readcnt=3 RDID returned 0xff 0xff 0xff. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0xff, id2 0xffff Probing for Atmel AT45DB041D, 512 kB: serprog_spi_send_command, writecnt=1, readcnt=3 RDID returned 0xff 0xff 0xff. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0xff, id2 0xffff Probing for Atmel AT45DB081D, 1024 kB: serprog_spi_send_command, writecnt=1, readcnt=3 RDID returned 0xff 0xff 0xff. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0xff, id2 0xffff Probing for Atmel AT45DB161D, 2048 kB: serprog_spi_send_command, writecnt=1, readcnt=3 RDID returned 0xff 0xff 0xff. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0xff, id2 0xffff Probing for Atmel AT45DB321C, 4224 kB: serprog_spi_send_command, writecnt=1, readcnt=3 RDID returned 0xff 0xff 0xff. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0xff, id2 0xffff Probing for Atmel AT45DB321D, 4096 kB: serprog_spi_send_command, writecnt=1, readcnt=3 RDID returned 0xff 0xff 0xff. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0xff, id2 0xffff Probing for Atmel AT45DB642D, 8192 kB: serprog_spi_send_command, writecnt=1, readcnt=3 RDID returned 0xff 0xff 0xff. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0xff, id2 0xffff Probing for EMST F25L008A, 1024 kB: serprog_spi_send_command, writecnt=1, readcnt=3 RDID returned 0xff 0xff 0xff. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0xff, id2 0xffff Probing for Eon EN25B05, 64 kB: serprog_spi_send_command, writecnt=1, readcnt=3 RDID returned 0xff 0xff 0xff. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0xff, id2 0xffff Probing for Eon EN25B05T, 64 kB: serprog_spi_send_command, writecnt=1, readcnt=3 RDID returned 0xff 0xff 0xff. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0xff, id2 0xffff Probing for Eon EN25B10, 128 kB: serprog_spi_send_command, writecnt=1, readcnt=3 RDID returned 0xff 0xff 0xff. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0xff, id2 0xffff Probing for Eon EN25B10T, 128 kB: serprog_spi_send_command, writecnt=1, readcnt=3 RDID returned 0xff 0xff 0xff. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0xff, id2 0xffff Probing for Eon EN25B20, 256 kB: serprog_spi_send_command, writecnt=1, readcnt=3 RDID returned 0xff 0xff 0xff. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0xff, id2 0xffff Probing for Eon EN25B20T, 256 kB: serprog_spi_send_command, writecnt=1, readcnt=3 RDID returned 0xff 0xff 0xff. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0xff, id2 0xffff Probing for Eon EN25B40, 512 kB: serprog_spi_send_command, writecnt=1, readcnt=3 RDID returned 0xff 0xff 0xff. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0xff, id2 0xffff Probing for Eon EN25B40T, 512 kB: serprog_spi_send_command, writecnt=1, readcnt=3 RDID returned 0xff 0xff 0xff. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0xff, id2 0xffff Probing for Eon EN25B80, 1024 kB: serprog_spi_send_command, writecnt=1, readcnt=3 RDID returned 0xff 0xff 0xff. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0xff, id2 0xffff Probing for Eon EN25B80T, 1024 kB: serprog_spi_send_command, writecnt=1, readcnt=3 RDID returned 0xff 0xff 0xff. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0xff, id2 0xffff Probing for Eon EN25B16, 2048 kB: serprog_spi_send_command, writecnt=1, readcnt=3 RDID returned 0xff 0xff 0xff. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0xff, id2 0xffff Probing for Eon EN25B16T, 2048 kB: serprog_spi_send_command, writecnt=1, readcnt=3 RDID returned 0xff 0xff 0xff. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0xff, id2 0xffff Probing for Eon EN25B32, 4096 kB: serprog_spi_send_command, writecnt=1, readcnt=3 RDID returned 0xff 0xff 0xff. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0xff, id2 0xffff Probing for Eon EN25B32T, 4096 kB: serprog_spi_send_command, writecnt=1, readcnt=3 RDID returned 0xff 0xff 0xff. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0xff, id2 0xffff Probing for Eon EN25B64, 8192 kB: serprog_spi_send_command, writecnt=1, readcnt=3 RDID returned 0xff 0xff 0xff. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0xff, id2 0xffff Probing for Eon EN25B64T, 8192 kB: serprog_spi_send_command, writecnt=1, readcnt=3 RDID returned 0xff 0xff 0xff. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0xff, id2 0xffff Probing for Eon EN25F05, 64 kB: serprog_spi_send_command, writecnt=1, readcnt=3 RDID returned 0xff 0xff 0xff. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0xff, id2 0xffff Probing for Eon EN25F10, 128 kB: serprog_spi_send_command, writecnt=1, readcnt=3 RDID returned 0xff 0xff 0xff. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0xff, id2 0xffff Probing for Eon EN25F20, 256 kB: serprog_spi_send_command, writecnt=1, readcnt=3 RDID returned 0xff 0xff 0xff. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0xff, id2 0xffff Probing for Eon EN25F40, 512 kB: serprog_spi_send_command, writecnt=1, readcnt=3 RDID returned 0xff 0xff 0xff. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0xff, id2 0xffff Probing for Eon EN25F80, 1024 kB: serprog_spi_send_command, writecnt=1, readcnt=3 RDID returned 0xff 0xff 0xff. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0xff, id2 0xffff Probing for Eon EN25F16, 2048 kB: serprog_spi_send_command, writecnt=1, readcnt=3 RDID returned 0xff 0xff 0xff. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0xff, id2 0xffff Probing for Eon EN25F32, 4096 kB: serprog_spi_send_command, writecnt=1, readcnt=3 RDID returned 0xff 0xff 0xff. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0xff, id2 0xffff Probing for Eon EN25Q40, 512 kB: serprog_spi_send_command, writecnt=1, readcnt=3 RDID returned 0xff 0xff 0xff. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0xff, id2 0xffff Probing for Eon EN25Q80(A), 1024 kB: serprog_spi_send_command, writecnt=1, readcnt=3 RDID returned 0xff 0xff 0xff. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0xff, id2 0xffff Probing for Eon EN25Q16, 2048 kB: serprog_spi_send_command, writecnt=1, readcnt=3 RDID returned 0xff 0xff 0xff. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0xff, id2 0xffff Probing for Eon EN25Q32(A/B), 4096 kB: serprog_spi_send_command, writecnt=1, readcnt=3 RDID returned 0xff 0xff 0xff. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0xff, id2 0xffff Probing for Eon EN25Q64, 8192 kB: serprog_spi_send_command, writecnt=1, readcnt=3 RDID returned 0xff 0xff 0xff. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0xff, id2 0xffff Probing for Eon EN25Q128, 16384 kB: serprog_spi_send_command, writecnt=1, readcnt=3 RDID returned 0xff 0xff 0xff. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0xff, id2 0xffff Probing for Eon EN25QH16, 2048 kB: serprog_spi_send_command, writecnt=1, readcnt=3 RDID returned 0xff 0xff 0xff. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0xff, id2 0xffff Probing for Eon EN25QH32, 4096 kB: serprog_spi_send_command, writecnt=1, readcnt=3 RDID returned 0xff 0xff 0xff. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0xff, id2 0xffff Probing for GigaDevice GD25Q20, 256 kB: serprog_spi_send_command, writecnt=1, readcnt=3 RDID returned 0xff 0xff 0xff. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0xff, id2 0xffff Probing for GigaDevice GD25Q40, 512 kB: serprog_spi_send_command, writecnt=1, readcnt=3 RDID returned 0xff 0xff 0xff. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0xff, id2 0xffff Probing for GigaDevice GD25Q80, 1024 kB: serprog_spi_send_command, writecnt=1, readcnt=3 RDID returned 0xff 0xff 0xff. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0xff, id2 0xffff Probing for GigaDevice GD25Q16, 2048 kB: serprog_spi_send_command, writecnt=1, readcnt=3 RDID returned 0xff 0xff 0xff. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0xff, id2 0xffff Probing for GigaDevice GD25Q32, 4096 kB: serprog_spi_send_command, writecnt=1, readcnt=3 RDID returned 0xff 0xff 0xff. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0xff, id2 0xffff Probing for GigaDevice GD25Q64, 8192 kB: serprog_spi_send_command, writecnt=1, readcnt=3 RDID returned 0xff 0xff 0xff. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0xff, id2 0xffff Probing for GigaDevice GD25Q128, 16384 kB: serprog_spi_send_command, writecnt=1, readcnt=3 RDID returned 0xff 0xff 0xff. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0xff, id2 0xffff Probing for Macronix MX25L512, 64 kB: serprog_spi_send_command, writecnt=1, readcnt=3 RDID returned 0xff 0xff 0xff. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0xff, id2 0xffff Probing for Macronix MX25L1005, 128 kB: serprog_spi_send_command, writecnt=1, readcnt=3 RDID returned 0xff 0xff 0xff. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0xff, id2 0xffff Probing for Macronix MX25L2005, 256 kB: serprog_spi_send_command, writecnt=1, readcnt=3 RDID returned 0xff 0xff 0xff. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0xff, id2 0xffff Probing for Macronix MX25L4005, 512 kB: serprog_spi_send_command, writecnt=1, readcnt=3 RDID returned 0xff 0xff 0xff. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0xff, id2 0xffff Probing for Macronix MX25L8005, 1024 kB: serprog_spi_send_command, writecnt=1, readcnt=3 RDID returned 0xff 0xff 0xff. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0xff, id2 0xffff Probing for Macronix MX25L1605, 2048 kB: serprog_spi_send_command, writecnt=1, readcnt=3 RDID returned 0xff 0xff 0xff. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0xff, id2 0xffff Probing for Macronix MX25L1635D, 2048 kB: serprog_spi_send_command, writecnt=1, readcnt=3 RDID returned 0xff 0xff 0xff. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0xff, id2 0xffff Probing for Macronix MX25L1635E, 2048 kB: serprog_spi_send_command, writecnt=1, readcnt=3 RDID returned 0xff 0xff 0xff. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0xff, id2 0xffff Probing for Macronix MX25L3205, 4096 kB: serprog_spi_send_command, writecnt=1, readcnt=3 RDID returned 0xff 0xff 0xff. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0xff, id2 0xffff Probing for Macronix MX25L3235D, 4096 kB: serprog_spi_send_command, writecnt=1, readcnt=3 RDID returned 0xff 0xff 0xff. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0xff, id2 0xffff Probing for Macronix MX25L6405, 8192 kB: serprog_spi_send_command, writecnt=1, readcnt=3 RDID returned 0xff 0xff 0xff. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0xff, id2 0xffff Probing for Macronix MX25L12805, 16384 kB: serprog_spi_send_command, writecnt=1, readcnt=3 RDID returned 0xff 0xff 0xff. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0xff, id2 0xffff Probing for Numonyx M25PE10, 128 kB: serprog_spi_send_command, writecnt=1, readcnt=3 RDID returned 0xff 0xff 0xff. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0xff, id2 0xffff Probing for Numonyx M25PE20, 256 kB: serprog_spi_send_command, writecnt=1, readcnt=3 RDID returned 0xff 0xff 0xff. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0xff, id2 0xffff Probing for Numonyx M25PE40, 512 kB: serprog_spi_send_command, writecnt=1, readcnt=3 RDID returned 0xff 0xff 0xff. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0xff, id2 0xffff Probing for Numonyx M25PE80, 1024 kB: serprog_spi_send_command, writecnt=1, readcnt=3 RDID returned 0xff 0xff 0xff. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0xff, id2 0xffff Probing for Numonyx M25PE16, 2048 kB: serprog_spi_send_command, writecnt=1, readcnt=3 RDID returned 0xff 0xff 0xff. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0xff, id2 0xffff Probing for Numonyx N25Q064, 8192 kB: serprog_spi_send_command, writecnt=1, readcnt=3 RDID returned 0xff 0xff 0xff. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0xff, id2 0xffff Probing for PMC Pm25LV010, 128 kB: serprog_spi_send_command, writecnt=1, readcnt=3 RDID returned 0xff 0xff 0xff. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0xff, id2 0xffff Probing for PMC Pm25LV016B, 2048 kB: serprog_spi_send_command, writecnt=1, readcnt=3 RDID returned 0xff 0xff 0xff. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0xff, id2 0xffff Probing for PMC Pm25LV020, 256 kB: serprog_spi_send_command, writecnt=1, readcnt=3 RDID returned 0xff 0xff 0xff. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0xff, id2 0xffff Probing for PMC Pm25LV040, 512 kB: serprog_spi_send_command, writecnt=1, readcnt=3 RDID returned 0xff 0xff 0xff. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0xff, id2 0xffff Probing for PMC Pm25LV080B, 1024 kB: serprog_spi_send_command, writecnt=1, readcnt=3 RDID returned 0xff 0xff 0xff. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0xff, id2 0xffff Probing for PMC Pm25LV512, 64 kB: serprog_spi_send_command, writecnt=1, readcnt=3 RDID returned 0xff 0xff 0xff. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0xff, id2 0xffff Probing for Sanyo LF25FW203A, 2048 kB: serprog_spi_send_command, writecnt=1, readcnt=3 RDID returned 0xff 0xff 0xff. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0xff, id2 0xffff Probing for Spansion S25FL004A, 512 kB: serprog_spi_send_command, writecnt=1, readcnt=3 RDID returned 0xff 0xff 0xff. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0xff, id2 0xffff Probing for Spansion S25FL008A, 1024 kB: serprog_spi_send_command, writecnt=1, readcnt=3 RDID returned 0xff 0xff 0xff. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0xff, id2 0xffff Probing for Spansion S25FL016A, 2048 kB: serprog_spi_send_command, writecnt=1, readcnt=3 RDID returned 0xff 0xff 0xff. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0xff, id2 0xffff Probing for Spansion S25FL032A, 4096 kB: serprog_spi_send_command, writecnt=1, readcnt=3 RDID returned 0xff 0xff 0xff. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0xff, id2 0xffff Probing for Spansion S25FL064A, 8192 kB: serprog_spi_send_command, writecnt=1, readcnt=3 RDID returned 0xff 0xff 0xff. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0xff, id2 0xffff Probing for SST SST25LF040A, 512 kB: serprog_spi_send_command, writecnt=4, readcnt=2 RES returned 0xce 0x3d. probe_spi_res2: id1 0xce, id2 0x3d Probing for SST SST25LF080A, 1024 kB: serprog_spi_send_command, writecnt=4, readcnt=2 RES returned 0xce 0xfb. probe_spi_res2: id1 0xce, id2 0xfb Probing for SST SST25VF010, 128 kB: serprog_spi_send_command, writecnt=4, readcnt=2 REMS returned 0xff 0xff. probe_spi_rems: id1 0xff, id2 0xff Probing for SST SST25VF016B, 2048 kB: serprog_spi_send_command, writecnt=1, readcnt=3 RDID returned 0xff 0xff 0xff. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0xff, id2 0xffff Probing for SST SST25VF032B, 4096 kB: serprog_spi_send_command, writecnt=1, readcnt=3 RDID returned 0xff 0xff 0xff. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0xff, id2 0xffff Probing for SST SST25VF064C, 8192 kB: serprog_spi_send_command, writecnt=1, readcnt=3 RDID returned 0xff 0xff 0xff. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0xff, id2 0xffff Probing for SST SST25VF040, 512 kB: serprog_spi_send_command, writecnt=4, readcnt=2 REMS returned 0xff 0xff. probe_spi_rems: id1 0xff, id2 0xff Probing for SST SST25VF040B, 512 kB: serprog_spi_send_command, writecnt=1, readcnt=3 RDID returned 0xff 0xff 0xff. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0xff, id2 0xffff Probing for SST SST25VF040B.REMS, 512 kB: serprog_spi_send_command, writecnt=4, readcnt=2 REMS returned 0xff 0xff. probe_spi_rems: id1 0xff, id2 0xff Probing for SST SST25VF080B, 1024 kB: serprog_spi_send_command, writecnt=1, readcnt=3 RDID returned 0xff 0xff 0xff. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0xff, id2 0xffff Probing for ST M25P05-A, 64 kB: serprog_spi_send_command, writecnt=1, readcnt=3 RDID returned 0xff 0xff 0xff. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0xff, id2 0xffff Probing for ST M25P05, 64 kB: serprog_spi_send_command, writecnt=1, readcnt=3 RDID returned 0xff 0xff 0xff. serprog_spi_send_command, writecnt=4, readcnt=2 REMS returned 0xff 0xff. serprog_spi_send_command, writecnt=4, readcnt=1 RES returned 0xce. probe_spi_res1: id 0xce Probing for ST M25P10-A, 128 kB: serprog_spi_send_command, writecnt=1, readcnt=3 RDID returned 0x00 0x00 0x00. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0x00, id2 0x00 Probing for ST M25P10, 128 kB: serprog_spi_send_command, writecnt=1, readcnt=3 RDID returned 0x00 0x00 0x00. serprog_spi_send_command, writecnt=4, readcnt=2 REMS returned 0x00 0x00. serprog_spi_send_command, writecnt=4, readcnt=1 RES returned 0xce. probe_spi_res1: id 0xce Probing for ST M25P20, 256 kB: serprog_spi_send_command, writecnt=1, readcnt=3 RDID returned 0x00 0x00 0x00. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0x00, id2 0x00 Probing for ST M25P40, 512 kB: serprog_spi_send_command, writecnt=1, readcnt=3 RDID returned 0x00 0x00 0x00. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0x00, id2 0x00 Probing for ST M25P40-old, 512 kB: serprog_spi_send_command, writecnt=1, readcnt=3 RDID returned 0x00 0x00 0x00. serprog_spi_send_command, writecnt=4, readcnt=2 REMS returned 0x00 0x00. serprog_spi_send_command, writecnt=4, readcnt=1 RES returned 0xce. probe_spi_res1: id 0xce Probing for ST M25P80, 1024 kB: serprog_spi_send_command, writecnt=1, readcnt=3 RDID returned 0x00 0x00 0x00. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0x00, id2 0x00 Probing for ST M25P16, 2048 kB: serprog_spi_send_command, writecnt=1, readcnt=3 RDID returned 0x00 0x00 0x00. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0x00, id2 0x00 Probing for ST M25P32, 4096 kB: serprog_spi_send_command, writecnt=1, readcnt=3 RDID returned 0x00 0x00 0x00. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0x00, id2 0x00 Probing for ST M25P64, 8192 kB: serprog_spi_send_command, writecnt=1, readcnt=3 RDID returned 0x00 0x00 0x00. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0x00, id2 0x00 Probing for ST M25P128, 16384 kB: serprog_spi_send_command, writecnt=1, readcnt=3 RDID returned 0x00 0x00 0x00. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0x00, id2 0x00 Probing for ST M25PX16, 2048 kB: serprog_spi_send_command, writecnt=1, readcnt=3 RDID returned 0x00 0x00 0x00. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0x00, id2 0x00 Probing for ST M25PX32, 4096 kB: serprog_spi_send_command, writecnt=1, readcnt=3 RDID returned 0x00 0x00 0x00. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0x00, id2 0x00 Probing for ST M25PX64, 8192 kB: serprog_spi_send_command, writecnt=1, readcnt=3 RDID returned 0x00 0x00 0x00. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0x00, id2 0x00 Probing for Winbond W25Q80, 1024 kB: serprog_spi_send_command, writecnt=1, readcnt=3 RDID returned 0x00 0x00 0x00. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0x00, id2 0x00 Probing for Winbond W25Q16, 2048 kB: serprog_spi_send_command, writecnt=1, readcnt=3 RDID returned 0x00 0x00 0x00. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0x00, id2 0x00 Probing for Winbond W25Q32, 4096 kB: serprog_spi_send_command, writecnt=1, readcnt=3 RDID returned 0x00 0x00 0x00. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0x00, id2 0x00 Probing for Winbond W25Q64, 8192 kB: serprog_spi_send_command, writecnt=1, readcnt=3 RDID returned 0x00 0x00 0x00. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0x00, id2 0x00 Probing for Winbond W25Q128, 16384 kB: serprog_spi_send_command, writecnt=1, readcnt=3 RDID returned 0xff 0xff 0xff. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0xff, id2 0xffff Probing for Winbond W25X10, 128 kB: serprog_spi_send_command, writecnt=1, readcnt=3 RDID returned 0xff 0xff 0xff. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0xff, id2 0xffff Probing for Winbond W25X20, 256 kB: serprog_spi_send_command, writecnt=1, readcnt=3 RDID returned 0xff 0xff 0xff. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0xff, id2 0xffff Probing for Winbond W25X40, 512 kB: serprog_spi_send_command, writecnt=1, readcnt=3 RDID returned 0xff 0xff 0xff. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0xff, id2 0xffff Probing for Winbond W25X80, 1024 kB: serprog_spi_send_command, writecnt=1, readcnt=3 RDID returned 0xff 0xff 0xff. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0xff, id2 0xffff Probing for Winbond W25X16, 2048 kB: serprog_spi_send_command, writecnt=1, readcnt=3 RDID returned 0xff 0xff 0xff. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0xff, id2 0xffff Probing for Winbond W25X32, 4096 kB: serprog_spi_send_command, writecnt=1, readcnt=3 RDID returned 0xff 0xff 0xff. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0xff, id2 0xffff Probing for Winbond W25X64, 8192 kB: serprog_spi_send_command, writecnt=1, readcnt=3 RDID returned 0xff 0xff 0xff. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0xff, id2 0xffff Probing for Unknown SFDP-capable chip, 0 kB: spi_sfdp_read_sfdp_chunk: addr=0x0, len=2, data: serprog_spi_send_command, writecnt=4, readcnt=3 0xff 0xff spi_sfdp_read_sfdp_chunk: addr=0x2, len=2, data: serprog_spi_send_command, writecnt=4, readcnt=3 0xff 0xff Signature = 0xffffffff (should be 0x50444653) No SFDP signature found. Probing for AMIC unknown AMIC SPI chip, 0 kB: serprog_spi_send_command, writecnt=1, readcnt=4 RDID returned 0xff 0xff 0xff 0xff. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0xff, id2 0xffff Probing for Atmel unknown Atmel SPI chip, 0 kB: serprog_spi_send_command, writecnt=1, readcnt=3 RDID returned 0xff 0xff 0xff. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0xff, id2 0xffff Probing for Eon unknown Eon SPI chip, 0 kB: serprog_spi_send_command, writecnt=1, readcnt=3 RDID returned 0xff 0xff 0xff. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0xff, id2 0xffff Probing for Macronix unknown Macronix SPI chip, 0 kB: serprog_spi_send_command, writecnt=1, readcnt=3 RDID returned 0xff 0xff 0xff. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0xff, id2 0xffff Probing for PMC unknown PMC SPI chip, 0 kB: serprog_spi_send_command, writecnt=1, readcnt=3 RDID returned 0xff 0xff 0xff. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0xff, id2 0xffff Probing for SST unknown SST SPI chip, 0 kB: serprog_spi_send_command, writecnt=1, readcnt=3 RDID returned 0xff 0xff 0xff. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0xff, id2 0xffff Probing for ST unknown ST SPI chip, 0 kB: serprog_spi_send_command, writecnt=1, readcnt=3 RDID returned 0xff 0xff 0xff. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0xff, id2 0xffff Probing for Sanyo unknown Sanyo SPI chip, 0 kB: serprog_spi_send_command, writecnt=1, readcnt=3 RDID returned 0xff 0xff 0xff. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0xff, id2 0xffff Probing for Generic unknown SPI chip (RDID), 0 kB: serprog_spi_send_command, writecnt=1, readcnt=3 RDID returned 0xff 0xff 0xff. RDID byte 0 parity violation. probe_spi_rdid_generic: id1 0xff, id2 0xffff Probing for Generic unknown SPI chip (REMS), 0 kB: serprog_spi_send_command, writecnt=4, readcnt=2 REMS returned 0xff 0xff. probe_spi_rems: id1 0xff, id2 0xff No EEPROM/flash device found. Note: flashrom can never write if the flash chip isn't found automatically. serprog_shutdown
On 27 January 2015 at 23:10, Stefan Tauner < stefan.tauner@alumni.tuwien.ac.at> wrote:
On Tue, 27 Jan 2015 22:36:03 +0200 Tudoran Mihail mihail.tudoran@gmail.com wrote:
Hello,
I am encountering some issues trying to read a Pm25LV512 SPI flash from a small LCD monitor, really got stuck at this point.
Hardware:
- Pm25LV512 attached to a Weltrend WT8871 video IC
- Arduino UNO R3 with 16u2 USB<>Serial converter
- CD4050 to convert 5v to 3v3
- Used the schematic provided on
http://flashrom.org/Serprog/Arduino_flasher
to interface the chip
- Tried "in-circuit" programming without removing the chip from the board
- Wire length of less than 8cm.
Software:
- Latest serprog-duino from git
- Tried with flashrom v0.9.6.1-r1563
- And with flashrom v0.9.7-r1711
- Ubuntu 14.04 64bit
I really appreciate any help I could get and can provide any info/logs needed.
The result looks as if you are reading random data... either your connections are wrong/bad, or the board is disturbing the communication on the SPI bus. See also http://flashrom.org/ISP
-- Kind regards/Mit freundlichen Grüßen, Stefan Tauner