1
0
mirror of https://review.coreboot.org/flashrom.git synced 2025-07-02 22:43:17 +02:00

Add new programmer for SPI EEPROMs attached to Intel 82580 NICs

This patch lets you read and write the EEPROM on 82580-based gigabit NIC
cards. So far it has been tested on copper NICs only, but other variants
employing this controller should work too.
It is a nice substitution for the official eeupdate tool.

Speed is quite decent: less than 4 seconds for erases or writes of 32 kB.

Corresponding to flashrom svn r1832.

Signed-off-by: Ricardo Ribalda Delgado <ricardo.ribalda@gmail.com>
Signed-off-by: Stefan Tauner <stefan.tauner@alumni.tuwien.ac.at>
Tested-by: Ricardo Ribalda Delgado <ricardo.ribalda@gmail.com>
Acked-by: Stefan Tauner <stefan.tauner@alumni.tuwien.ac.at>
This commit is contained in:
Ricardo Ribalda Delgado
2014-07-28 20:35:21 +00:00
committed by Stefan Tauner
parent a5bcbceb58
commit 2a41f0a2c0
5 changed files with 379 additions and 3 deletions

View File

@ -225,6 +225,8 @@ bitbanging adapter)
.sp
.BR "* usbblaster_spi" " (for SPI flash ROMs attached to an Altera USB-Blaster compatible cable)"
.sp
.BR "* nicintel_eeprom" " (for SPI EEPROMs on Intel Gigabit network cards)"
.sp
Some programmers have optional or mandatory parameters which are described
in detail in the
.B PROGRAMMER SPECIFIC INFO
@ -591,7 +593,7 @@ syntax where
.B content
is an 8-bit hexadecimal value.
.SS
.BR "nic3com" , " nicrealtek" , " nicnatsemi" , " nicintel"\
.BR "nic3com" , " nicrealtek" , " nicnatsemi" , " nicintel", " nicintel_eeprom"\
, " nicintel_spi" , " gfxnvidia" , " ogp_spi" , " drkaiser" , " satasii"\
, " satamv" , " atahpt" ", " atavia " and " it8212 " programmers
These programmers have an option to specify the PCI address of the card
@ -625,6 +627,14 @@ For more information please see
.nh
.B http://flashrom.org/VT6421A
.SS
.BR "nicintel_eeprom " programmer
This is the first programmer module in flashrom that does not provide access to NOR flash chips but EEPROMs
mounted on gigabit Ethernet cards based on Intel's 82580 NIC. Because EEPROMs normally do not announce their
size nor allow to be identified, the controller relies on correct size values written to predefined addresses
within the chip. Flashrom follows this scheme but assumes the minimum size of 16 kB (128 kb) if an unprogrammed
EEPROM/card is detected. Intel specifies following EEPROMs to be compatible: Atmel AT25128, AT25256, Micron (ST)
M95128, M95256 and OnSemi (Catalyst) CAT25CS128.
.SS
.BR "ft2232_spi " programmer
An optional parameter specifies the controller
type and channel/interface/port it should support. For that you have to use the
@ -922,8 +932,8 @@ need PCI configuration space access and raw memory access.
.B rayer_spi
needs raw I/O port access.
.sp
.B satasii
needs PCI configuration space read access and raw memory access.
.BR satasii ", " nicintel ", " nicintel_eeprom " and " nicintel_spi
need PCI configuration space read access and raw memory access.
.sp
.B satamv
needs PCI configuration space read access, raw I/O port access and raw memory