[flashrom] Add timeout check to SPI bitbang bus request

Iain Paton selsinork at gmail.com
Fri Oct 14 18:48:27 CEST 2011


Stefan Tauner wrote:
> On Fri, 14 Oct 2011 11:19:04 +0100
> Iain Paton <selsinork at gmail.com> wrote:
> 
>> the spi device on the card is an AT25F1024N which doesn't appear to be supported anyway..
> 
> http://www.flashrom.org/pipermail/flashrom/2011-July/007449.html

Thanks for those.. Obvious that I've not been paying enough attention to the ML :)

Anyway, having applied your four on top of what I have the result is much the same. I do 
at least see it probing for the AT25F1024(A) now.

Seems that this timeout is causing it not to even get that far. I've tried tweaking 
MAX_REQUEST_LOOPS to no avail, even x100 has the same result.

Other suggestions welcome !

Iain.


./flashrom -p nicintel_spi -V
flashrom v0.9.4-r1450 on Linux 3.0.0-dt (i686), built with libpci 3.1.8, GCC 4.5.2, little endian
flashrom is free software, get the source code at http://www.flashrom.org

Calibrating delay loop... OS timer resolution is 1 usecs, 1793M loops per second, 10 myus = 10 us, 100 myus = 225 us, 1000 myus = 1188 us, 10000 myus = 10461 us, 4 myus = 5 us, OK.
Initializing nicintel_spi programmer
Found "Intel 82540EM Gigabit Ethernet Controller" (8086:100e, BDF 30:00.0).
Requested BAR is MEM, 32bit, not prefetchable
Probing for AMIC A25L05PT, 64 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for AMIC A25L05PU, 64 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for AMIC A25L10PT, 128 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for AMIC A25L10PU, 128 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for AMIC A25L20PT, 256 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for AMIC A25L20PU, 256 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for AMIC A25L40PT, 512 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for AMIC A25L40PU, 512 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for AMIC A25L80P, 1024 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for AMIC A25L16PT, 2048 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for AMIC A25L16PU, 2048 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for AMIC A25L512, 64 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for AMIC A25L010, 128 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for AMIC A25L020, 256 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for AMIC A25L040, 512 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for AMIC A25L080, 1024 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for AMIC A25L016, 2048 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for AMIC A25L032, 4096 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for AMIC A25LQ032, 4096 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for Atmel AT25DF021, 256 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for Atmel AT25DF041A, 512 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for Atmel AT25DF081, 1024 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for Atmel AT25DF081A, 1024 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for Atmel AT25DF161, 2048 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for Atmel AT25DF321, 4096 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for Atmel AT25DF321A, 4096 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for Atmel AT25DF641, 8192 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for Atmel AT25DQ161, 2048 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for Atmel AT25F512, 64 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for Atmel AT25F512A, 64 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for Atmel AT25F512B, 64 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for Atmel AT25F1024(A), 128 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for Atmel AT25FS010, 128 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for Atmel AT25FS040, 512 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for Atmel AT26DF041, 512 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for Atmel AT26DF081A, 1024 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for Atmel AT26DF161, 2048 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for Atmel AT26DF161A, 2048 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for Atmel AT26F004, 512 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for Atmel AT45CS1282, 16896 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for Atmel AT45DB011D, 128 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for Atmel AT45DB021D, 256 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for Atmel AT45DB041D, 512 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for Atmel AT45DB081D, 1024 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for Atmel AT45DB161D, 2048 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for Atmel AT45DB321C, 4224 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for Atmel AT45DB321D, 4096 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for Atmel AT45DB642D, 8192 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for EMST F25L008A, 1024 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for Eon EN25B05, 64 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for Eon EN25B05T, 64 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for Eon EN25B10, 128 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for Eon EN25B10T, 128 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for Eon EN25B20, 256 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for Eon EN25B20T, 256 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for Eon EN25B40, 512 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for Eon EN25B40T, 512 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for Eon EN25B80, 1024 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for Eon EN25B80T, 1024 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for Eon EN25B16, 2048 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for Eon EN25B16T, 2048 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for Eon EN25B32, 4096 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for Eon EN25B32T, 4096 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for Eon EN25B64, 8192 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for Eon EN25B64T, 8192 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for Eon EN25F05, 64 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for Eon EN25F10, 128 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for Eon EN25F20, 256 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for Eon EN25F40, 512 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for Eon EN25F80, 1024 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for Eon EN25F16, 2048 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for Eon EN25F32, 4096 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for Eon EN25Q40, 512 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for Eon EN25Q80(A), 1024 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for Eon EN25Q16, 2048 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for Eon EN25Q32(A/B), 4096 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for Eon EN25Q64, 8192 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for Eon EN25Q128, 16384 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for Eon EN25QH16, 2048 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for Macronix MX25L512, 64 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for Macronix MX25L1005, 128 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for Macronix MX25L2005, 256 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for Macronix MX25L4005, 512 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for Macronix MX25L8005, 1024 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for Macronix MX25L1605, 2048 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for Macronix MX25L1635D, 2048 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for Macronix MX25L1635E, 2048 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for Macronix MX25L3205, 4096 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for Macronix MX25L3235D, 4096 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for Macronix MX25L6405, 8192 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for Macronix MX25L12805, 16384 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for Numonyx M25PE10, 128 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for Numonyx M25PE20, 256 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for Numonyx M25PE40, 512 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for Numonyx M25PE80, 1024 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for Numonyx M25PE16, 2048 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for PMC Pm25LV010, 128 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for PMC Pm25LV016B, 2048 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for PMC Pm25LV020, 256 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for PMC Pm25LV040, 512 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for PMC Pm25LV080B, 1024 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for PMC Pm25LV512, 64 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for Sanyo LF25FW203A, 2048 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for Spansion S25FL004A, 512 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for Spansion S25FL008A, 1024 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for Spansion S25FL016A, 2048 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for Spansion S25FL032A, 4096 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for Spansion S25FL064A, 8192 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for SST SST25LF040A, 512 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for SST SST25LF080A, 1024 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for SST SST25VF010, 128 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for SST SST25VF016B, 2048 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for SST SST25VF032B, 4096 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for SST SST25VF064C, 8192 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for SST SST25VF040, 512 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for SST SST25VF040B, 512 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for SST SST25VF040B.REMS, 512 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for SST SST25VF080B, 1024 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for ST M25P05-A, 64 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for ST M25P05, 64 kB: nicintel_request_spibus: Timeout! Aborting.
nicintel_request_spibus: Timeout! Aborting.
nicintel_request_spibus: Timeout! Aborting.

Probing for ST M25P10-A, 128 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for ST M25P10, 128 kB: nicintel_request_spibus: Timeout! Aborting.
nicintel_request_spibus: Timeout! Aborting.
nicintel_request_spibus: Timeout! Aborting.

Probing for ST M25P20, 256 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for ST M25P40, 512 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for ST M25P40-old, 512 kB: nicintel_request_spibus: Timeout! Aborting.
nicintel_request_spibus: Timeout! Aborting.
nicintel_request_spibus: Timeout! Aborting.

Probing for ST M25P80, 1024 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for ST M25P16, 2048 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for ST M25P32, 4096 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for ST M25P64, 8192 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for ST M25P128, 16384 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for ST M25PX16, 2048 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for ST M25PX32, 4096 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for ST M25PX64, 8192 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for Winbond W25Q80, 1024 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for Winbond W25Q16, 2048 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for Winbond W25Q32, 4096 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for Winbond W25Q64, 8192 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for Winbond W25Q128, 16384 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for Winbond W25X10, 128 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for Winbond W25X20, 256 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for Winbond W25X40, 512 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for Winbond W25X80, 1024 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for Winbond W25X16, 2048 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for Winbond W25X32, 4096 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for Winbond W25X64, 8192 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for AMIC unknown AMIC SPI chip, 0 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for Atmel unknown Atmel SPI chip, 0 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for Eon unknown Eon SPI chip, 0 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for Macronix unknown Macronix SPI chip, 0 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for PMC unknown PMC SPI chip, 0 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for SST unknown SST SPI chip, 0 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for ST unknown ST SPI chip, 0 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for Sanyo unknown Sanyo SPI chip, 0 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for Generic unknown SPI chip (RDID), 0 kB: nicintel_request_spibus: Timeout! Aborting.

Probing for Generic unknown SPI chip (REMS), 0 kB: nicintel_request_spibus: Timeout! Aborting.

No EEPROM/flash device found.
Note: flashrom can never write if the flash chip isn't found automatically.





More information about the flashrom mailing list