Tulip Ethernet Card Driver
|
Tulip Ethernet Card Driver
|
|
|
The Tulip driver is developed by Donald Becker and changed by
|
The Tulip driver is developed by Donald Becker and changed by
|
Takashi Manabe. This driver is designed to work with PCI Ethernet
|
Takashi Manabe. This driver is designed to work with PCI Ethernet
|
cards which use the DECchip DC21x4x family. This driver hopefully
|
cards which use the DECchip DC21x4x family. This driver hopefully
|
works with all of 1.2.x and 1.3.x kernels, but I tested only
|
works with all of 1.2.x and 1.3.x kernels, but I tested only
|
with 1.2.13, 1.3.39, 1.3.49, 1.3.52, 1.3.57 and later.
|
with 1.2.13, 1.3.39, 1.3.49, 1.3.52, 1.3.57 and later.
|
|
|
Hopefully, the de4x5.c driver will support all cards supported
|
Hopefully, the de4x5.c driver will support all cards supported
|
by the tulip.c driver. However, the SMC's 9332dst card and some
|
by the tulip.c driver. However, the SMC's 9332dst card and some
|
cards do not work with the de4x5.c driver. So, if your card is
|
cards do not work with the de4x5.c driver. So, if your card is
|
not a 9332dst, please try the de4x5.c driver first.
|
not a 9332dst, please try the de4x5.c driver first.
|
|
|
Success List
|
Success List
|
============
|
============
|
|
|
+-------------------------------------+-----------+-------------+
|
+-------------------------------------+-----------+-------------+
|
|vendor/card |chip |system |
|
|vendor/card |chip |system |
|
+-------------------------------------+-----------+-------------+
|
+-------------------------------------+-----------+-------------+
|
|SMC | | |
|
|SMC | | |
|
| EtherPower 10 PCI(8432T/8432BT) |21040/21041|Pentium |
|
| EtherPower 10 PCI(8432T/8432BT) |21040/21041|Pentium |
|
+-------------------------------------+-----------+-------------+
|
+-------------------------------------+-----------+-------------+
|
|SMC | | |
|
|SMC | | |
|
| EtherPower 10/100 PCI(9332DST) |21140 |Pentium/UDB |
|
| EtherPower 10/100 PCI(9332DST) |21140 |Pentium/UDB |
|
+-------------------------------------+-----------+-------------+
|
+-------------------------------------+-----------+-------------+
|
|DEC | | |
|
|DEC | | |
|
| EtherWorks 100/10 PCI(DE500-XA) |21140 |Pentium |
|
| EtherWorks 100/10 PCI(DE500-XA) |21140 |Pentium |
|
+-------------------------------------+-----------+-------------+
|
+-------------------------------------+-----------+-------------+
|
|DEC | | |
|
|DEC | | |
|
| EtherWorks 10 PCI(DE450) |21041 |Pentium |
|
| EtherWorks 10 PCI(DE450) |21041 |Pentium |
|
+-------------------------------------+-----------+-------------+
|
+-------------------------------------+-----------+-------------+
|
|DEC | | |
|
|DEC | | |
|
| QSILVER's |21040 |UDB |
|
| QSILVER's |21040 |UDB |
|
+-------------------------------------+-----------+-------------+
|
+-------------------------------------+-----------+-------------+
|
|ZNYX | | |
|
|ZNYX | | |
|
| 312 etherarray |21040 |Pentium |
|
| 312 etherarray |21040 |Pentium |
|
+-------------------------------------+-----------+-------------+
|
+-------------------------------------+-----------+-------------+
|
|Allied Telesis | | |
|
|Allied Telesis | | |
|
| LA100PCI-T |21140 |Pentium/UDB |
|
| LA100PCI-T |21140 |Pentium/UDB |
|
+-------------------------------------+-----------+-------------+
|
+-------------------------------------+-----------+-------------+
|
|Danpex ('Planet Japan' in Japan?) | | |
|
|Danpex ('Planet Japan' in Japan?) | | |
|
| EN-9400 |21040 |Pentium |
|
| EN-9400 |21040 |Pentium |
|
+-------------------------------------+-----------+-------------+
|
+-------------------------------------+-----------+-------------+
|
|Cogent | | |
|
|Cogent | | |
|
| EM110 |21140 |Pentium |
|
| EM110 |21140 |Pentium |
|
+-------------------------------------+-----------+-------------+
|
+-------------------------------------+-----------+-------------+
|
|
|
Pentium: PCI machine with Pentium CPU
|
Pentium: PCI machine with Pentium CPU
|
UDB: Universal Desktop Box(aka Multia) with Alpha 21066 CPU
|
UDB: Universal Desktop Box(aka Multia) with Alpha 21066 CPU
|
|
|
Known bug(s)
|
Known bug(s)
|
============
|
============
|
This driver's media detection is very simple and sometimes
|
This driver's media detection is very simple and sometimes
|
it causes serious problem. The driver automatically switches
|
it causes serious problem. The driver automatically switches
|
media when it causes timeout. If you want to specify or to fix
|
media when it causes timeout. If you want to specify or to fix
|
a media;
|
a media;
|
|
|
- Modify TULIP_PORT in tulip.c, line 33.
|
- Modify TULIP_PORT in tulip.c, line 33.
|
- Uncomment the definition of TULIP_FIX_PORT in tulip.c, line 40.
|
- Uncomment the definition of TULIP_FIX_PORT in tulip.c, line 40.
|
|
|
or
|
or
|
|
|
- Use patched ifconfig command and specify 'link='. The patch
|
- Use patched ifconfig command and specify 'link='. The patch
|
against ifconfig.c in net-tools-1.3.50-BETA6e is included in
|
against ifconfig.c in net-tools-1.3.50-BETA6e is included in
|
this file.
|
this file.
|
|
|
Thanks
|
Thanks
|
======
|
======
|
|
|
o becker@CESDIS.gsfc.nasa.gov (author of the tulip.c driver)
|
o becker@CESDIS.gsfc.nasa.gov (author of the tulip.c driver)
|
o davies@wanton.lkg.dec.com (author of the de4x5.c driver)
|
o davies@wanton.lkg.dec.com (author of the de4x5.c driver)
|
|
|
o siekas@mailhost.tcs.tulane.edu
|
o siekas@mailhost.tcs.tulane.edu
|
|
|
o jheiss@calvin.caltech.edu (providing information about smc8432 card)
|
o jheiss@calvin.caltech.edu (providing information about smc8432 card)
|
o goto@plathome.co.jp (lending me a DE450 card)
|
o goto@plathome.co.jp (lending me a DE450 card)
|
o ted@physics.ucsb.edu
|
o ted@physics.ucsb.edu
|
o pmheuvel@xs4all.nl
|
o pmheuvel@xs4all.nl
|
o hjl@lucon.org (EN-9400)
|
o hjl@lucon.org (EN-9400)
|
o niles@axp745.gsfc.nasa.gov (ZNYX312)
|
o niles@axp745.gsfc.nasa.gov (ZNYX312)
|
o pkc@scs.carleton.ca (EM110)
|
o pkc@scs.carleton.ca (EM110)
|
o and testers...
|
o and testers...
|
|
|
-----------------------------------------------------------------------
|
-----------------------------------------------------------------------
|
*** ifconfig.c-dist Wed Jan 17 07:25:36 1996
|
*** ifconfig.c-dist Wed Jan 17 07:25:36 1996
|
--- ifconfig.c Tue Apr 9 15:24:25 1996
|
--- ifconfig.c Tue Apr 9 15:24:25 1996
|
***************
|
***************
|
*** 765,770 ****
|
*** 765,770 ****
|
--- 766,786 ----
|
--- 766,786 ----
|
continue;
|
continue;
|
}
|
}
|
ifr.ifr_map.irq = atoi(*spp);
|
ifr.ifr_map.irq = atoi(*spp);
|
+ if (ioctl(skfd, SIOCSIFMAP, &ifr) < 0) {
|
+ if (ioctl(skfd, SIOCSIFMAP, &ifr) < 0) {
|
+ fprintf(stderr, "SIOCSIFMAP: %s\n", strerror(errno));
|
+ fprintf(stderr, "SIOCSIFMAP: %s\n", strerror(errno));
|
+ goterr = 1;
|
+ goterr = 1;
|
+ }
|
+ }
|
+ spp++;
|
+ spp++;
|
+ continue;
|
+ continue;
|
+ }
|
+ }
|
+
|
+
|
+ if (!strcmp(*spp, "link")) {
|
+ if (!strcmp(*spp, "link")) {
|
+ if (*++spp == NULL) usage();
|
+ if (*++spp == NULL) usage();
|
+ if (ioctl(skfd, SIOCGIFMAP, &ifr) < 0) {
|
+ if (ioctl(skfd, SIOCGIFMAP, &ifr) < 0) {
|
+ goterr = 1;
|
+ goterr = 1;
|
+ continue;
|
+ continue;
|
+ }
|
+ }
|
+ ifr.ifr_map.port = atoi(*spp);
|
+ ifr.ifr_map.port = atoi(*spp);
|
if (ioctl(skfd, SIOCSIFMAP, &ifr) < 0) {
|
if (ioctl(skfd, SIOCSIFMAP, &ifr) < 0) {
|
fprintf(stderr, "SIOCSIFMAP: %s\n", strerror(errno));
|
fprintf(stderr, "SIOCSIFMAP: %s\n", strerror(errno));
|
goterr = 1;
|
goterr = 1;
|
|
|