Hi, Carl-Daniel Hailfinger schrieb:
On 17.05.2010 18:27, Jörg Fischer wrote:
Guenter schrieb:
a lot of Realtek RTL8139 NICs have a DIL-32 bootrom socket [...]
Many cards tie the "write enable" Pin to its logic "not enabled" state instead of connecting to the chip, so flash writes are impossible on _most_ card types I came across. YMMV.
Ouch. Not really a good way to use the cards as programmers.
I have only 2 "known working" card types: SMC1211 TX with 10/100 RJ-54 AND 10Base-T (was quite expensive at its time), and "Longshine" cards with RTL8139C Chip.
I have still some not-really-working code from my earlier experiments. I could read the chip-id and erase the chip - but the erase test failed afterwards, though the cips' contents seemed to be all 0xFF.
Working ID and working erase, only with failing erase test? We had such issues on multiple programmers, and it turned out that the timing in flashrom was broken for the affected flash chips. This has since been fixed, so maybe your code now works fine?
Have not checked that for quite some time now.
If you are still interested: The attached .c file contains details on how to talk to the flash chip on RTL 8139 NIC.
IMHO any code which can at least get chip IDs is good enough to get merged (disabled by default until all issues are fixed). That will allow others to hack on the code and makes sure the code is not forgotten. Could you please resend it as a complete patch with a Signed-off-by line?
This may take some time, I am rather busy right now...
-- J. Fischer