Hello there,
let me point out that the recent code to use 3x905C as a flashrom programmer, will almost certainly fail for the predecessor 3c905B-TX (id 0x9055). The reason being that there is a bug where the mii unit interferes. Thus one needs to put the media subsystem into state 0x06, i.e. internal mii, by a write to register window no. 3. Then window no. 0 can be activated, any read or write of flash may follow, and upon completion the old media configuration should be restored.
After much effort I found this out for my own class of kernel modules aimed at using network cards for in situ programming.
Interested developers can glean the details off a utility "bromutil.c" contributed with the Etherboot or gPXE distribution. That code is not by me!
Best regards
Mats Erik Andersson