I've created a new Etherboot driver to better support the Macronix MX987x5 (tulip clone) chip as found in some recent, affordable 10/100 cards. I've included the README file for the driver at the end of this message. I used the tulip.c file as a starting point. I then decided to rewrite it for the Macronix after reading the data sheet and application note for the MX98715A. First to support 10/100 auto-negotiation, but also to use the Linux EEPROM routines so that the entire driver would be using the same coding interface rather than having the FreeBSD coding for SROM and the Linux coding for other parts. See what you think. By making it a separate driver file it will not affect the current tulip driver, and may make other PCI tulip clone support easier. You can download the driver at http://www.thinguin.org/ I'd appreciate code review and other feedback. Regards, Marty Connor firstname.lastname@example.org ------------------ README file for mx987x5 driver for etherboot-4.2.11 This directory contains 4 files that implement a driver for PCI fast (10/100) ethernet cards based on the Macronix MX987x5 chipset. This software may be used and distributed according to the terms of the GNU Public License, incorporated herein by reference. INSTALLATION 1. unpack the tar file: $ cd etherboot-4.2.11 $ tar -zxvf mx987x5-0.75b1.tar.gz 2. back up Makefile and config.c $ cd src $ cp Makefile Makefile.orig $ cp config.c config.c.orig 3. copy in new files $ cd ../mx987x5-0.75b1 $ cp Makefile config.c mx987x5.c mx987x5.h ../src 4. compile $ cd ../src-32 $ make You should get an mx987x5.lzrom file 5. make a test floppy $ make mx987x5.lzrom At this point, you can try booting a workstation. Of course you have to have all the usual Etherboot stuff (bootp/dhcp/NFS) set up, and you need a Linux kernel with v0.91 (4.14.99) or later of the tulip.c driver compiled in. That file is available at: http://cesdis.gsfc.nasa.gov/linux/drivers/tulip.html See the comments at the beginning of mx987x5.[ch] for more information on the code. NOTES I've tested this driver with a SOHOware Fast 10/100 Model SDA110A card, and it worked at both 10 and 100 mbits. Other cards based on the MX987x5 family may work as well. Basically, these cards are about 20$US, are supported by Linux and now Etherboot, and being PCI, they auto-configure IRQ and IOADDR and auto-negotiate 10/100 half/full duplex. It seems like a pretty good value compared to some of the pricier cards, and can lower the cost of building/adapting thin client workstations substantially while giving a considerable performance increase. These changes replace the 10mbit(fixed) support in the tulip driver for the MX98715. This driver lets the card choose the fastest speed it can negotiate with the peer device. It would of course be possible to make a compile-time option to initialize the card for fixed speed operation, but auto-negotiation seems more generally useful as a starting point. I burned an AM27C256 (32KByte) EPROM with mx987x5.lzrom and it worked. According to the data sheet the MX98715A supports up to 64K (27C512) of EPROM, so we should be able to stuff lots of code in. I've liberally commented the code and header files in the hope that it will help the next person who hacks the code or needs to support some tulip clone card, or wishes to add functionality. Anyway, please test this if you can on your MX987x5 based card, and let me (email@example.com) and the netboot list (firstname.lastname@example.org) know how things go. I also would appreciate code review by people who program. I'm a strong believer in "another set of eyes". --- 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: email@example.com Web: http://www.thinguin.org/ =========================================================================== This Mail was sent to netboot mailing list by: Marty Connor <firstname.lastname@example.org> To get help about this list, send a mail with 'help' as the only string in it's body to email@example.com. If you have problems with this list, send a mail to firstname.lastname@example.org.
For requests or suggestions regarding this mailing list archive please write to email@example.com.