3C905B-TX Boot Prom Mapping?

Hans-Peter Jansen hpj.lisa@t-online.de
Fri Mar 5 10:13:16 1999


Dan Marks wrote:
> 
> I am interested in using the NetBoot package to create a BOOTP/TFTP image
> for my 3Com 3C905B-TX ethernet card.  However, it seems that the "standard"
> type ROM images do not work.  I have the version of the card that has the
> vertical ROM socket, not the horizontal one.  What I am calling the "standard"
> ROM type is the type that maps the entire ROM contents (usually 16k or 32k)
> into the upper conventional memory area.  It appears that this version of
> the 3C905B I have does not do this.  The 3C905B takes either a 64k or 128k
> part (the ATMEL 29C512 or 29C010).  It seems that in order to avoid mapping
> in such a large ROM in its entirety, 3Com decided to have only the first
> 2 kilobytes of the ROM visible in the conventional memory area.  The code
> in this 2K copies the remaining 62K off of the ROM into conventional memory
> (I think) where it is executed and the actual boot loader code runs.
> 
> This means that the conventional boot ROMs that can be built by the NetBoot
> package (http://www.han.de/~gero/netboot/) won't work because they expect
> to be mapped in their entirety into conventional memory.  I do not have
> the 3C905B-TX technical (register level type) documentation.  But if there
> were a register on the 3Com board that controls how much of the ROM is
> mapped into conventional memory (such as in the EEPROM), then perhaps it
> could be set to allow the entire memory to be mapped.
> 
> Alternatively, if the registers on the 3C905B-TX were known that controls
> the memory mapping into extended memory of the ROM, then a similar boot
> loader snippet could be written for the visible 2K of the 3C905B boot ROM
> that would similarly copy the Netboot code into conventional memory and
> allow it to function normally.
> 
> Another snag I've found is that it seems there may be a special "signature"
> needed to make the ROM visible that I do not know.  This "signature" if it
> existed would be above and beyond the "55AA" signature for any ROM in the
> PC architecture, and is also not the "$Pnp" or "PCIR" signature blocks that
> are present in the ROMS for PNP and PCI cards (or perhaps it may be a
> nonstandard version of these signature blocks).  I have attempted to build
> a NetBoot ROM on a 29C512 part with the PCIR and $Pnp signatures that
> signify a network bootable ROM, but the 3Com card refuses to even map it
> at all and does not allocate any conventional memory space for it.  I think
> the 3C905B may be looking for this signature and not mapping the card at
> all if it does not find it.  All I can really find out about the signature
> from 3Com is that, because they have acquired a company called Lanworks
> to write their boot roms for them, they have decided to make all of the
> boot ROMs proprietary and the information about such a signature would not
> be available from 3Com.  This is especially disappointing because it would
> probably mean that future 3Com cards would require proprietary boot PROMs.
> 
> This new ROM format is part of the 3Com "Tri-ROM" MBA ROM format (I guess
> so named because it supports TCP/IP, Netware, and PXI), which is what
> necessitated such a large ROM part to be used.
> 
> So far this is what I know.  If someone knows any technical information
> about the ROMs or their mapping registers it would be much appreciated.
> 
> Dan Marks
> dmarks@uiuc.edu

I just want to confirm this, as I tested it today (with an old 
netboot 0.7.3 version)
When booting the 3C905B (WOL), it says something like:

Uncompressing done

and hangs...

Same eeprom worked fine in an ordinary 3C905.

If somebody has fixed this problem, a small message is greatly welcomed!

Does anybody tried to reprogram an atmel AT29C512 eeprom with the 
vortex-diag program?

Cheers
Hans-Peter