Hi Stefan,
we have a added and tested support for the intel i82580 to the nicintel_spi driver. Is anyone else working on that topic or should I post the patch. This could conflict with the i350 patch http://patchwork.coreboot.org/patch/4394/. Should our patch be based on a clear 0.9.9 release or on a 0.9.9 + i350 patch.
we have no idea if the i350 patch really works and we won't merge it till someone has tested it. Thus your approach of basing it on the last commit (i.e. on the 0.9.9 release) is just fine. The conflicts can't be too bad anyway since the i350 patch is not large at all. Thanks in advance for the patch!
find the patch attached. You will see, that it's impact is as small as with the i350 patch. It's just the id's and the offset to the flash registers.
I have introduced a small helper function called nicintel_spi_get_flash_register_offset. The purpose is to make the code more readable and to move the offset more closely to the definition of the pci-devices.
We have found out some things that might be interesting for others. Is there a place where such things can be put, e.g. a wiki? - with an unprogrammed eeprom the i82580 detects the eeprom as 16KB, even if the eeprom is 32KB. - if the eeprom of flash is not programmed (has device-id 1509), the igb driver does not recognize the card and does not enable it. The device must be enable via sysfs prior to programming (e.g. echo 1 > /sys/bus/pci/devices/0000:01:00.0/enable). Only one device needs to be programmed, as they all share the same eeprom.
Any comments to the patch are welcome.
best regards Michael