Re: [Etherboot-users] 3c905b bug fix compile error
Brought to you by:
marty_connor,
stefanhajnoczi
From: Marty C. <md...@et...> - 2005-09-09 17:56:37
|
On Sep 9, 2005, at 1:11 PM, le...@mi... wrote: > Marty, > The patch code worked however I had a problem doing the patch - > p0 command. > I looked at the patch file and patched by hand and it worked. The > error I was > getting was the following. > -------- > patching file 3c90x.c > patch: **** malformed patch at line 7: /*** > a3c90x_internal_WriteEepromWord - > write a physical word of > -------- > It doesn't seem to like your comment. I should have attached the patch as a text file. My mail program badly mangled it when I pasted it in. Sorry about that! If anybody with developer cvs access wants to apply the patch to 5.4 cvs, please go ahead, and update the LOG. Thanks. It's nice to hear that the patch worked. Have you actually able to flash some chips on the card? I assume you are using bromutil to do your flashing, and knowing that it is still working would be nice. Make sure you stop the ethernet card with something like: /sbin/ifconfig eth1 down before you flash it, even if it's not being used for network traffic, else you may have problems flashing. Another way to go is with Don Becker's diagnostic programs, available at: http://www.scyld.com/ethercard_diag.html#pci-diags Specifically: ftp://ftp.scyld.com/pub/diag/vortex-diag.c You would need to compile with the -DLIBFLASH flag and linked against: ftp://scyld.com/pub/diag/libflash.c Don's diag programs are very full-featured, and probably overkill for your purpose, but they're very informative, and if you have the time and inclination, they're fun to play with. We'd enjoy hearing how things go for you, and any notes or comments you'd like to share about your project. (if you'd like to jot down a quick HOWTO (nothing fancy, just a list of steps), please do). > Thanks for the Help Thank you for using Etherboot, and for helping us make it better! > -Lee Marty > > On Sep 8, 2005, at 11:07 PM, lee@mi... wrote: > >> Hello, >> I have been reading the mail archive and see there is the bug >> with the >> 3c90x cards so I am trying to compile the etherboot bug fix option >> -DCFG_3C90X_BOOTROM_FIX. >> > > Hello, and thanks very much for your message. > > >> I am guessing you put it in the Makefile.main towards >> the bottom like this but not sure >> 3C90XFLAGS= -DINCLUDE_3C90X -DCFG_3C90X_BOOTROM_FIX >> > > This should work fine. You could also do: > > CFLAGS+= -DCFG_3C90X_BOOTROM_FIX > > in src/Config which might be easier to find and comment out after > you've > made your floppy. Either way is fine. > > >> Anyways, If this is correct, when I go to compile I get the >> following error >> # make bin/3c90x.zfd0 >> ld -N -T arch/i386/core/etherboot.lds -o bin/3c90x.dsk.rt bin/ >> 3c90x.rt.o >> bin/floppyprefix.exit.o >> bin/3c90x.rt.o(.text+0x1803): In function `a3c90x_probe': >> : undefined reference to `a3c90x_internal_WriteEeprom' >> make: *** [bin/3c90x.dsk.rt] Error 1 >> > > This looks like a bug in 3c90x.c. Here is a patch: > > ===== patch begins at next line===== > --- 3c90x.c.orig 2005-09-09 06:53:10.000000000 -0400 > +++ 3c90x.c 2005-09-09 07:04:17.000000000 -0400 > @@ -319,7 +319,7 @@ > } > -#if 0 > +#ifdef CFG_3C90X_BOOTROM_FIX | CFG_3C90X_XCVR > /*** a3c90x_internal_WriteEepromWord - write a physical word of > *** data to the onboard serial eeprom (not the BIOS prom, but the > *** nvram in the card that stores, among other things, the MAC > @@ -353,9 +353,7 @@ > return 0; > } > -#endif > -#if 0 > /*** a3c90x_internal_WriteEeprom - write data to the serial eeprom, > *** and re-compute the eeprom checksum. > ***/ > ===== patch ends with previous line ===== > > Part of the code that the BOOTROM_FIX code needed was conditionalized > out. I just made sure that the code was turned on if either of two > compile-time options was defined, since they both need it. > > If you copy this patch into a file, say, ~/bootrom-patch.txt", and go > to the > etherboot-5.4.1/src/drivers/net directory, and do: > > $ patch -p0 < ~/bootrom-patch.txt > > it should apply the patch, and you can then do: > > $ make bin/3c90x.zdsk > > And you should get the floppy you need to fix configure the ROM > socket on your 3C905B with the BootROM socket bug. > > Then it's a simple matter of: > > $ cat bin/3c90x.zdsk > /dev/fd0 > > and boot once with the floppy (and no EEPROM in the socket!). Then > take out the floppy, put in an EEPROM, and have at it. > > >> I am using etherboot 5.4.1 any help would be great for I am trying >> to make my >> own boot rom chips for I have a programmer but so far the cards are >> not seeing >> the chips I make at all. I am hoping this bug fix will fix the >> problem >> thanks >> -Lee >> > > I should also mention that the good folks of LTSP released a pre- > built floppy image (from an older version of Etherboot) that > configures 3C905-B ROM sockets. It is available here: > > http://sourceforge.net/project/showfiles.php? > group_id=17723&package_id=13619&release_id=32370 > > It should also reconfigure the card. > > I do appreciate your bug report, and would also appreciate it if you > would be so kind as to test the patch I provided above. If it works, > we'll apply it to CVS so the fix will be carried forward. > > Thanks again for your help. Please let us know how things go... > > Marty > > > ---------------------------------------------------------------- > This message was sent using IMP, the Internet Messaging Program. > > > > ------------------------------------------------------- > SF.Net email is Sponsored by the Better Software Conference & EXPO > September 19-22, 2005 * San Francisco, CA * Development Lifecycle > Practices > Agile & Plan-Driven Development * Managing Projects & Teams * > Testing & QA > Security * Process Improvement & Measurement * http://www.sqe.com/ > bsce5sf > _______________________________________________ > Etherboot-users mailing list > Eth...@li... > https://lists.sourceforge.net/lists/listinfo/etherboot-users > |