diff options
author | Michael Brown <mcb30@etherboot.org> | 2005-05-17 16:44:57 +0000 |
---|---|---|
committer | Michael Brown <mcb30@etherboot.org> | 2005-05-17 16:44:57 +0000 |
commit | 1097cf8685cd81f0003bd6f17d050e5174a85b90 (patch) | |
tree | 47a39f2a1e980cca43c28c4d1a6dfdf431b910b2 /contrib/eepro100notes | |
parent | 75a5374d79ee0defc46c306731142faccc6eda60 (diff) | |
download | ipxe-1097cf8685cd81f0003bd6f17d050e5174a85b90.tar.gz |
Initial revision
Diffstat (limited to 'contrib/eepro100notes')
-rw-r--r-- | contrib/eepro100notes/flash-1.txt | 73 | ||||
-rw-r--r-- | contrib/eepro100notes/flash-2.txt | 149 | ||||
-rw-r--r-- | contrib/eepro100notes/flash-3.txt | 57 |
3 files changed, 279 insertions, 0 deletions
diff --git a/contrib/eepro100notes/flash-1.txt b/contrib/eepro100notes/flash-1.txt new file mode 100644 index 00000000..61579b4c --- /dev/null +++ b/contrib/eepro100notes/flash-1.txt @@ -0,0 +1,73 @@ +Date: Tue, 18 May 1999 15:45:55 +0200 (MEST) +From: Erik Starback <erik@math.uu.se> +To: netboot@baghira.han.de +Subject: Netboot with Intel EEPRO100+ Management +Message-ID: <Pine.LNX.3.96.990518154313.3875A-100000@anarchy.math.uu.se> +MIME-Version: 1.0 +Content-Type: TEXT/PLAIN; charset=iso-8859-1 +Content-Transfer-Encoding: 8BIT +Sender: owner-netboot@baghira.han.de +Precedence: bulk +Reply-To: netboot@baghira.han.de +X-Moderator: netboot-owner@baghira.han.de +X-UIDL: 6ca8453c19c46d622813e9be8ada9517 +Status: O +X-Status: + +Hello! + +When Intel eepro100+ NIC disappeared from the market, I didn't know +what to do. I didn't find any information if anyone has used the +new eepro100+ Management Adapter to netboot linux. + +I thought that the card should netboot with the same configuration as +the old card when I read Donald Beckers comment: +> The driver should "just work" with the '559. It's not supposed to be +> substantially different than the '558. (I don't have a datasheet +> or sample card to confirm this statement.) + +The problem was now only to put the netboot-program to the built in +flash memory on the NIC. With the old card I used a flash memory (Intel +N28F020 [N28010 didn't work])) and the program FUTIL.EXE from Intel to +flash it. FUTIL did't recognize the memory on the management card +and did not work therefore. + +I found the intel program FBOOT.EXE that was made to upgrade the built +in Intel BOOT agent. I did: Boot dos from floppy, Run FBOOT (choose +adapter), choose (u)pdate, choose Create restore image, rename the +backup file (in my case 2743BE52.FLS [the eight last hex digits from +the MAC address]), rename your netboot code (in my case netboot 0.8.1) +to the backup files original name (in my case 2743BE52.FLS), run +FBOOT, choose (r)estore. + +Voila! + +A shorter way (if you don't need the backup of the old Intel BOOT +agent code) is of course: rename netboot file to [the eight last hex +digits from the MAC address].FLS, run FBOOT, choose restore. + +Caution: I think it is possible to make a NIC unusable if you have +made the netboot (or etherboot) file with "wrong" parameters. A couple +of month ago I did a etherboot boot file and put it on an old +EEPRO100+ card. It worked fine, but it was impossible to boot local +with it. So I could not boot dos and with FUTIL or FBOOT erase the +flash memory! To erase the chip I had to take out the memory chip, +boot dos and then put in the memory chip. This isn't possible when the +memory chip is build in. + +Links: +<http://support.intel.com/support/landesk/configmgr/LSA1_193.HTM> +FUTIL.EXE is a part of LSA1_193.ZIP + +<http://support.intel.com/support/etherexpress/pro100/100pboot.htm> +FBOOT.EXE is a part of 100pboot.exe + +/Erik S + +------------------------------------------------------------------------- +Erik Starbäck, System administrator E-mail address: erik@math.uu.se +Uppsala University Telephone (o): +46 18 4713277 +Department of Mathematics Cellular phone: +46 70 4250260 +P. O. Box 480 Fax (o): +46 18 4713201 +SE-751 06 UPPSALA +Sweden diff --git a/contrib/eepro100notes/flash-2.txt b/contrib/eepro100notes/flash-2.txt new file mode 100644 index 00000000..1128c30e --- /dev/null +++ b/contrib/eepro100notes/flash-2.txt @@ -0,0 +1,149 @@ +Subject: Look Mom, no PROM burner! (eepro100b flashing instructions) :-) +Date: Sun, 23 Jan 2000 01:53:08 -0500 +x-sender: mdc%thinguin.org@cdi.entity.com +x-mailer: Claris Emailer 2.0v3, January 22, 1998 +From: Marty Connor <mdc@thinguin.org> +To: "Netboot List" <netboot@baghira.han.de> +Mime-Version: 1.0 +Content-Type: text/plain; charset="US-ASCII" +Message-ID: <1263512144-341319205@entity.com> + +Continuing the Etherboot World Domination theme, I noticed that there was +a PCI ethernet card on my bookshelf that still contained the original +vendor's code in its flash memory. The card virtually cried out to be +flashed with Etherboot 4.4.1. :-) + +After having figured out how to flash the 3C905C last week, and owing to +the fact that the temperature here in Cambridge, Massachusetts (USA) has +dropped well below freezing, I decided to explore the possibility of +flashing the Intel eepro100b that was sitting on my bookcase. + +After determining that it was unlikely that one could flash the chip in +user mode under linux like the 3C509C, I turned to other options. (the +reason is that the flash is memory mapped to a place that causes a core +dump if accessed. i suppose one could to patch the kernel to flash the +card, or add a linux device driver, but... :-) + +By the way, If you are ever looking for Linux utilities for Ethernet +cards, you may want to check out: + + http://cesdis.gsfc.nasa.gov/linux/diag/ + +which is a treasure trove of tools for manipulating and testing Ethernet +cards, all with source, courtesy of Donald Becker. + +At this point, I felt it was time to make a virtual trip to the Intel +site (http://www.intel.com/), and search for utilities that might work +with the eepro100B. I found two candidates: FUTIL and FBOOT. I +downloaded, decompressed, and transferred them to a DOS formatted floppy. +Next I determined (after a few tries) that F8 will let me get to DOS +instead of booting windows. (I tend to avoid Windows when I can). + +I first tried FUTIL.EXE. No good. It told me it didn't recognize the +flash on my eepro100B. how unfortunate. and I had such hopes :-) + +Next I tested FBOOT.EXE (available at +http://support.intel.com/support/network/adapter/pro100/100PBOOT.htm) +This program did in fact recognize my eepro100b card. + +The thing about FBOOT however, is that it thinks it only can load certain +files. I of course needed to load an Etherboot image. It appeared to +have no option for doing that. Things looked grim. + +Then I noticed that FBOOT was kind enough to do the following dialog: + + Select Option (U)pdate or (R)estore: U + +I chose Update and it then offered to back up my flash rom for later +restore: + + Create Restore Image (Y)es or (N)o: Y + +I chose "Y" and it proceeded to write a file of my flash memory, which +contained the Intel code. + + Writing FLASH image to file... 100% + +It then erased the device: + + Erasing FLASH Device... 100% + +and then programmed it with fresh code (stored inside the program, no +doubt): + + Programming FLASH Device... 100% + +So now I had a backup of the Intel boot code in a file strangely called: + + 2794FC60.FLS + +Hmmmm, interesting name. The MAC address of the card is 09902794FC60. +They just name the file with the last 4 octets of the MAC address and +.FLS. The file is exactly 65536 bytes, which would make sense for a 64K +Flash Memory device. + +Then I got to thinking, I wonder how carefully the "restore" part of +FBOOT looks at what it is loading? What if I took an Etherboot .rom +file, padded it with 48K of 0xFFs and named it 2794FC60.FLS. What if I +then told FBOOT.EXE to "restore" that? + +Well, I guess by now, you know it worked :-) + +The card came up with the delightful Etherboot banner, Did DHCP, tftp, +and started a kernel. + +The only unfortunate part is that you need to do this under DOS because +you seem to need to be in real mode to program the card. Oh well, +sacrifices have to be made :-) + +So, in summary, to prepare Etherboot image for flashing into the Intel +EEPRO100B card with FBOOT, you need to first make an eepro100.rom file, +as usual. + +Then, see how large it is, with an "ls -l eepro100.rom". the answer will +probably be 16,384. You need to pad it with hex FFs to make it 64K for +FBOOT. I used the following two lines to create the flash image file. + + $ perl -e 'print "\xFF" x 49152' > 48kpad.bin + $ cat eepro100.rom 48kpad.bin > 2794FC60.FLS + +Next write it to a DOS Floppy: + + $ mount -t msdos /dev/fd0 /mnt/floppy + $ cp 2794FC60.FLS /mnt/floppy + $ umount /mnt/floppy + +Now you need to get to DOS. You could actually use a bootable DOS floppy +with FBOOT.EXE and 2794FC60.FLS on it. I started a Windows box and hit +F8 right before Windows started, and chose option 5, "Command Prompt +Only", which gives you DOS. This program can't run in a DOS window under +Windows or anything like that. You need to be in real DOS. + +Next it's time to run FBOOT. It will detect your ethernet card(s), ask +you which one you want to program, and let you choose it from a menu. + +now the fun part: + + Select Option (U)pdate or (R)estore: R + Erasing FLASH Device... 100% + Writing FLASH image from file... 100% + +Time to reboot and let Etherboot take over. + +So there you go, a way to make Intel EEPRO100Bs play nicely with +Etherboot. Maybe we should put these instructions in the Etherboot +contrib directory so people who have eepro100b cards will be able to +avoid 3C905C envy :-) + +I hope this helps a few people out. + +Regards, + +Marty + +--- + Name: Martin D. Connor +US Mail: Entity Cyber, Inc.; P.O. Box 391827; Cambridge, MA 02139; USA + Voice: (617) 491-6935, Fax: (617) 491-7046 + Email: mdc@thinguin.org + Web: http://www.thinguin.org/ diff --git a/contrib/eepro100notes/flash-3.txt b/contrib/eepro100notes/flash-3.txt new file mode 100644 index 00000000..1a865a44 --- /dev/null +++ b/contrib/eepro100notes/flash-3.txt @@ -0,0 +1,57 @@ +Date: Sun, 23 Jan 2000 09:47:15 +0100 (MET) +From: Erik Starbäck <erik@math.uu.se> +To: Netboot List <netboot@baghira.han.de> +Subject: Re: Look Mom, no PROM burner! (eepro100b flashing instructions) :-) +In-Reply-To: <1263512144-341319205@entity.com> +Message-ID: <Pine.LNX.3.96.1000123094505.28562A-100000@anarchy.math.uu.se> +MIME-Version: 1.0 +Content-Type: TEXT/PLAIN; charset=iso-8859-1 +Content-Transfer-Encoding: 8BIT +Sender: owner-netboot@baghira.han.de +Precedence: bulk +Reply-To: netboot@baghira.han.de +X-Moderator: netboot-owner@baghira.han.de + + +Hello! + +In <http://www.han.de/~gero/netboot/archive/msg01718.html> I wrote what I +did know about futil and fboot then. It is about the same as Martys +instructions, but I have a few comments now. + +> Then, see how large it is, with an "ls -l eepro100.rom". the answer will +> probably be 16,384. You need to pad it with hex FFs to make it 64K for +> FBOOT. I used the following two lines to create the flash image file. + +> $ perl -e 'print "\xFF" x 49152' > 48kpad.bin +> $ cat eepro100.rom 48kpad.bin > 2794FC60.FLS + +It worked for me without any padding. When I burned a smaller image +the program printed 50% instead of 100% and then it +stopped. Everything worked anyway. + + +I also did a brutal way of install etherboot or netboot on a +EEPRO100+Mng without creating a file of type "2794FC60.FLS" for +every card. It was necessary for me when I installed 70 clients... + +I chopped the binary file fboot.exe (my version was 99811 bytes, I +don't remember the version name) in three parts: + +fboot1 30096 bytes +fboot2 65536 bytes +fboot3 4179 bytes + +Then you cat put them together again, but with a different part 2 and +save it as fbootown.exe and execute it. It worked for me anyway. Of +course you have to use padding to get a 64k part instead of fboot2. + +/Erik S + +------------------------------------------------------------------------- +Erik Starbäck, System administrator E-mail address: erik@math.uu.se +Uppsala University Telephone (o): +46 18 4713277 +Department of Mathematics Cellular phone: +46 70 4250260 +P. O. Box 480 Fax (o): +46 18 4713201 +SE-751 06 UPPSALA +Sweden |