[flashrom] Fwd: flashrom on Intel Nics,

Carl-Daniel Hailfinger c-d.hailfinger.devel.2006 at gmx.net
Tue Oct 5 14:04:03 CEST 2010


Hi Iain,

I would like to debug this issue as well.

On 29.09.2010 21:27, Idwer Vollering wrote:
> ---------- Forwarded message ----------
> From: Iain Paton <selsinork at gmail.com>
> Date: 2010/9/29
>
>
> So I have a couple of other intel nics that I've been trying with your
> flashrom driver, if you're interested in the results...
>
> root at p7fe-64:~/flashrom# ./flashrom -p nicintel_spi -VV
> flashrom v0.9.2-r1182 on Linux 2.6.35-dt (x86_64), built with libpci 3.1.4,
> GCC 4.4.3, little endian
> Initializing nicintel_spi programmer
> Found "Intel 82540EM Gigabit Ethernet Controller" (8086:100e, BDF 06:01.0).
> Requested BAR is MEM, 32bit, not prefetchable
> [...]
> Probing for AMD Am29LV081B, 1024 KB: skipped. Host bus type SPI and chip bus
> type Parallel are incompatible.
> Probing for AMIC A25L05PT, 64 KB:
>
> and it hangs there seemingly indefinately, or at least 10mins which is as
> long as I've been bothered to wait..  

That indicates the bitbanging code is waiting too long (forever) to get
access to the device. nicintel_spi.c:nicintel_request_spibus() will
simply wait forever for FL_GNT to be set. We may want to revisit that.
Besides that, it is possible that the nicintel driver needs some tweaks
to work with that card.


> The card has an Atmel 25F1024N which I
> gather from the flashrom source probably isn't supported as it may not have
> a device id, but the hang was unexpected.
>   

The device is already listed in flashchips.h, but we need to hook it up
to flashchips.c which requires writing a new probe function. Please ping
me once the 0.9.3 release is out so I can take care of this.


> root at p7fe-64:~/flashrom# ./flashrom -p nicintel_spi:pci=01:00.0 -VV
> flashrom v0.9.2-r1182 on Linux 2.6.35-dt (x86_64), built with libpci 3.1.4,
> GCC 4.4.3, little endian
> Initializing nicintel_spi programmer
> Found "Intel 82571EB Gigabit Ethernet Controller" (8086:105e, BDF 01:00.0).
> Requested BAR is MEM, 32bit, not prefetchable
> [...]
> Probing for AMIC A25L05PT, 64 KB: probe_spi_rdid_generic: id1 0xff, id2 0xffff
> [...]
> Probing for SST SST25VF040.REMS, 512 KB: probe_spi_rems: id1 0xff, id2 0xff
> [...]
> Probing for SST SST25LF040A.RES, 512 KB: probe_spi_res2: id1 0xff, id2 0xff
> [...]
> Probing for ST M25P05.RES, 64 KB: probe_spi_res1: id 0xff
> [...]
> No EEPROM/flash device found.
>
> So this is a dual port card, not sure which function the spi device would
> show up under, but the same result on both. It has an Atmel 25F1024AN, so
> again possibly not something that flashrom can handle anyway, but at least
> there's no hang this time.. Since this is a newish card I'll have a look and
> see if I can find one with some different SPI device, would be nice to know
> it works but is just the 25F1024 that's the problem here.
>   

This log seems to indicate that adding support for the Atmel 25F1024AN
would make the whole thing work fine. However, if the dual port device
appears as two PCI devices, we will have to add a check (if possible)
which refuses to work with the PCI device that does not have access to
the flash chip.


> If there's more information I can supply about either of these, or anything
> you'd like me to test, not a problem, just let me know.
>   

We need a hangfix for the 82540EM, and a flashchips.c entry for the
Atmel 25F1024AN. That should make flashrom work on all of your Gigabit
Intel NICs.

Regards,
Carl-Daniel

-- 
http://www.hailfinger.org/





More information about the flashrom mailing list