Deleted Added
full compact
ed.4 (24091) ed.4 (34504)
1.\"
2.\" Copyright (c) 1994, David Greenman
3.\" All rights reserved.
4.\"
5.\" Redistribution and use in source and binary forms, with or without
6.\" modification, are permitted provided that the following conditions
7.\" are met:
8.\" 1. Redistributions of source code must retain the above copyright
9.\" notice, this list of conditions and the following disclaimer.
10.\" 2. Redistributions in binary form must reproduce the above copyright
11.\" notice, this list of conditions and the following disclaimer in the
12.\" documentation and/or other materials provided with the distribution.
13.\" 3. All advertising materials mentioning features or use of this software
14.\" must display the following acknowledgement:
15.\" This product includes software developed by David Greenman.
16.\" 4. The name of the author may not be used to endorse or promote products
17.\" derived from this software without specific prior written permission.
18.\"
19.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
20.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
21.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
22.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
23.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
24.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
25.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
26.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
27.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
28.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
29.\" SUCH DAMAGE.
30.\"
1.\"
2.\" Copyright (c) 1994, David Greenman
3.\" All rights reserved.
4.\"
5.\" Redistribution and use in source and binary forms, with or without
6.\" modification, are permitted provided that the following conditions
7.\" are met:
8.\" 1. Redistributions of source code must retain the above copyright
9.\" notice, this list of conditions and the following disclaimer.
10.\" 2. Redistributions in binary form must reproduce the above copyright
11.\" notice, this list of conditions and the following disclaimer in the
12.\" documentation and/or other materials provided with the distribution.
13.\" 3. All advertising materials mentioning features or use of this software
14.\" must display the following acknowledgement:
15.\" This product includes software developed by David Greenman.
16.\" 4. The name of the author may not be used to endorse or promote products
17.\" derived from this software without specific prior written permission.
18.\"
19.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
20.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
21.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
22.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
23.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
24.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
25.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
26.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
27.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
28.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
29.\" SUCH DAMAGE.
30.\"
31.\" $Id: ed.4,v 1.9 1997/02/28 02:20:42 mpp Exp $
31.\" $Id: ed.4,v 1.10 1997/03/21 20:13:43 mpp Exp $
32.\"
33.Dd October 28, 1995
34.Dt ED 4 i386
35.Os FreeBSD
36.Sh NAME
37.Nm ed
38.Nd high performance ethernet device driver
39.Sh SYNOPSIS
40.Cd "device ed0 at isa? port 0x280 net irq 5 iomem 0xd8000 vector edintr"
41.Cd "device ed1 at isa? port 0x300 net irq 5 iomem 0xd8000 vector edintr"
42.Cd "device ed2 at isa? port 0x320 net irq 10 flags 0x4 iosiz 16384 iomem 0xd8000 vector edintr"
43.Sh DESCRIPTION
44The
45.Nm ed
46driver provides support for 8 and 16bit ISA ethernet cards that are based on
47the National Semiconductor DS8390 and similar NICs manufactured by other companies.
48.Pp
49It supports all 80x3 series ISA ethernet cards manufatured by Western Digital and SMC,
50the SMC Ultra, the 3Com 3c503, the Novell NE1000/NE2000, and HP PC Lan+.
51.Pp
52The
53.Nm
54driver uses a unique multi-buffering mechanism to achieve high transmit performance.
55When using 16bit ISA cards, as high as 97% of the theoretical maximum performance of
56the IEEE 802.3 CSMA ethernet is possible.
57.Pp
58In addition to the standard port and irq specifications, the
59.Nm
60driver also supports a number of
61.Em flags
62which can force 8/16bit mode, enable/disable multi-buffering, and select the default
63interface type (AUI/BNC, and for cards with twisted pair, AUI/10BaseT).
64.Pp
65The
66.Em flags
67are a bit field, and are summerized as follows:
68.Pp
69.Bl -hang -offset indent
70.It Em 0x01
71Disable tranceiver. On those cards which support it, this flag causes the tranceiver to
72be disabled and the AUI connection to be used by default.
73.It Em 0x02
74Force 8bit mode. This flag forces the card to 8bit mode regardless of how the
75card identifies itself. This may be needed for some clones which incorrectly
76identify themselves as 16bit, even though they only have an 8bit interface.
77.It Em 0x04
78Force 16bit mode. This flag forces the card to 16bit mode regardless of how the
79card identifies itself. This may be needed for some clones which incorrectly
80identify themselves as 8bit, even though they have a 16bit ISA interface.
81.It Em 0x08
82Disable transmitter multi-buffering. This flag disables the use of multiple
83transmit buffers and may be necessary in rare cases where packets are sent out
84faster than a machine on the other end can handle (as evidenced by severe packet
85lossage). Some
86.Pf ( No non- Ns Tn FreeBSD
87:-)) machines have terrible ethernet performance
88and simply can't cope with 1100K+ data rates. Use of this flag also provides
89one more packet worth of receiver buffering, and on 8bit cards, this may help
90reduce receiver lossage.
91.El
92.Pp
93When using a 3c503 card, the AUI connection may be selected by specifying the
94.Em link2
95option to
96.Xr ifconfig 8
97(BNC is the default).
98.Sh DIAGNOSTICS
99.Bl -diag
100.It "ed%d: kernel configured irq %d doesn't match board configured irq %d."
101The irq number that was specified in the kernel config file (and then compiled
102into the kernel) differs from the irq that has been set on the interface card.
103.It "ed%d: failed to clear shared memory at %x - check configuration."
104When the card was probed at system boot time, the
105.Nm ed
106driver found that it could not clear the card's shared memory. This is most commonly
107caused by a BIOS extension ROM being configured in the same address space as the
108ethernet card's shared memory. Either find the offending card and change its BIOS
109ROM to be at an address that doesn't conflict, or change the
110.Em iomem
111option in the kernel config file so that the card's shared memory is mapped at a
112non-conflicting address.
113.It "ed%d: Invalid irq configuration (%d) must be 2-5 for 3c503."
114The irq number that was specified in the kernel config file is not valid for
115the 3Com 3c503 card. The 3c503 can only be assigned to irqs 2 through 5.
116.It "ed%d: Cannot find start of RAM."
117.It "ed%d: Cannot find any RAM, start : %d, x = %d."
118The probe of a Gateway card was unsuccessful in configuring the card's packet memory.
119This likely indicates that the card was improperly recognized as a Gateway or that
120the card is defective.
121.It "ed: packets buffered, but transmitter idle."
122Indicates a logic problem in the driver. Should never happen.
123.It "ed%d: device timeout"
124Indicates that an expected transmitter interrupt didn't occur. Usually caused by an
125interrupt conflict with another card on the ISA bus.
126.It "ed%d: NIC memory corrupt - invalid packet length %d."
127Indicates that a packet was received with a packet length that was either larger than
128the maximum size or smaller than the minimum size allowed by the IEEE 802.3 standard. Usually
129caused by a conflict with another card on the ISA bus, but in some cases may also
130indicate faulty cabling.
131.It "ed%d: remote transmit DMA failed to complete."
132This indicates that a programmed I/O transfer to an NE1000 or NE2000 style card
133has failed to properly complete. Usually caused by the ISA bus speed being set
134too fast.
135.El
136.Sh CAVEATS
137Early revision DS8390 chips have problems. They lock up whenever the receive
138ring-buffer overflows. They occassionally switch the byte order
139of the length field in the packet ring header (several different causes
140of this related to an off-by-one byte alignment) - resulting in "NIC
141memory corrupt - invalid packet length" messages. The card is reset
142whenever these problems occur, but otherwise there is no problem with
143recovering from these conditions.
144.Pp
145The NIC memory access to 3Com and Novell cards is much slower than it is on
146WD/SMC cards; it's less than 1MB/second on 8bit boards and less than 2MB/second
147on the 16bit cards. This can lead to ring-buffer overruns resulting in
148dropped packets during heavy network traffic.
149.Pp
15016bit Compex cards identify themselves as being 8bit. While these cards will
151work in 8bit mode, much higher performance can be acheived by specifying
152.Em "flags 0x04"
153(force 16bit mode) in your kernel config file. In addition, you should also specify
154.Em "iosize 16384"
155to take advantage of the extra 8k of shared memory that 16bit mode provides.
156.Sh BUGS
157The
158.Nm ed
159driver is a bit too aggressive about resetting the card whenever any bad
160packets are received. As a result, it may throw out some good packets which
161have been received but not yet transfered from the card to main memory.
162.Sh SEE ALSO
163.Xr arp 4 ,
164.Xr netintro 4 ,
165.Xr ifconfig 8
166.Sh HISTORY
167The
168.Nm ed
169device driver first appeared in
170.Fx 1.0 .
32.\"
33.Dd October 28, 1995
34.Dt ED 4 i386
35.Os FreeBSD
36.Sh NAME
37.Nm ed
38.Nd high performance ethernet device driver
39.Sh SYNOPSIS
40.Cd "device ed0 at isa? port 0x280 net irq 5 iomem 0xd8000 vector edintr"
41.Cd "device ed1 at isa? port 0x300 net irq 5 iomem 0xd8000 vector edintr"
42.Cd "device ed2 at isa? port 0x320 net irq 10 flags 0x4 iosiz 16384 iomem 0xd8000 vector edintr"
43.Sh DESCRIPTION
44The
45.Nm ed
46driver provides support for 8 and 16bit ISA ethernet cards that are based on
47the National Semiconductor DS8390 and similar NICs manufactured by other companies.
48.Pp
49It supports all 80x3 series ISA ethernet cards manufatured by Western Digital and SMC,
50the SMC Ultra, the 3Com 3c503, the Novell NE1000/NE2000, and HP PC Lan+.
51.Pp
52The
53.Nm
54driver uses a unique multi-buffering mechanism to achieve high transmit performance.
55When using 16bit ISA cards, as high as 97% of the theoretical maximum performance of
56the IEEE 802.3 CSMA ethernet is possible.
57.Pp
58In addition to the standard port and irq specifications, the
59.Nm
60driver also supports a number of
61.Em flags
62which can force 8/16bit mode, enable/disable multi-buffering, and select the default
63interface type (AUI/BNC, and for cards with twisted pair, AUI/10BaseT).
64.Pp
65The
66.Em flags
67are a bit field, and are summerized as follows:
68.Pp
69.Bl -hang -offset indent
70.It Em 0x01
71Disable tranceiver. On those cards which support it, this flag causes the tranceiver to
72be disabled and the AUI connection to be used by default.
73.It Em 0x02
74Force 8bit mode. This flag forces the card to 8bit mode regardless of how the
75card identifies itself. This may be needed for some clones which incorrectly
76identify themselves as 16bit, even though they only have an 8bit interface.
77.It Em 0x04
78Force 16bit mode. This flag forces the card to 16bit mode regardless of how the
79card identifies itself. This may be needed for some clones which incorrectly
80identify themselves as 8bit, even though they have a 16bit ISA interface.
81.It Em 0x08
82Disable transmitter multi-buffering. This flag disables the use of multiple
83transmit buffers and may be necessary in rare cases where packets are sent out
84faster than a machine on the other end can handle (as evidenced by severe packet
85lossage). Some
86.Pf ( No non- Ns Tn FreeBSD
87:-)) machines have terrible ethernet performance
88and simply can't cope with 1100K+ data rates. Use of this flag also provides
89one more packet worth of receiver buffering, and on 8bit cards, this may help
90reduce receiver lossage.
91.El
92.Pp
93When using a 3c503 card, the AUI connection may be selected by specifying the
94.Em link2
95option to
96.Xr ifconfig 8
97(BNC is the default).
98.Sh DIAGNOSTICS
99.Bl -diag
100.It "ed%d: kernel configured irq %d doesn't match board configured irq %d."
101The irq number that was specified in the kernel config file (and then compiled
102into the kernel) differs from the irq that has been set on the interface card.
103.It "ed%d: failed to clear shared memory at %x - check configuration."
104When the card was probed at system boot time, the
105.Nm ed
106driver found that it could not clear the card's shared memory. This is most commonly
107caused by a BIOS extension ROM being configured in the same address space as the
108ethernet card's shared memory. Either find the offending card and change its BIOS
109ROM to be at an address that doesn't conflict, or change the
110.Em iomem
111option in the kernel config file so that the card's shared memory is mapped at a
112non-conflicting address.
113.It "ed%d: Invalid irq configuration (%d) must be 2-5 for 3c503."
114The irq number that was specified in the kernel config file is not valid for
115the 3Com 3c503 card. The 3c503 can only be assigned to irqs 2 through 5.
116.It "ed%d: Cannot find start of RAM."
117.It "ed%d: Cannot find any RAM, start : %d, x = %d."
118The probe of a Gateway card was unsuccessful in configuring the card's packet memory.
119This likely indicates that the card was improperly recognized as a Gateway or that
120the card is defective.
121.It "ed: packets buffered, but transmitter idle."
122Indicates a logic problem in the driver. Should never happen.
123.It "ed%d: device timeout"
124Indicates that an expected transmitter interrupt didn't occur. Usually caused by an
125interrupt conflict with another card on the ISA bus.
126.It "ed%d: NIC memory corrupt - invalid packet length %d."
127Indicates that a packet was received with a packet length that was either larger than
128the maximum size or smaller than the minimum size allowed by the IEEE 802.3 standard. Usually
129caused by a conflict with another card on the ISA bus, but in some cases may also
130indicate faulty cabling.
131.It "ed%d: remote transmit DMA failed to complete."
132This indicates that a programmed I/O transfer to an NE1000 or NE2000 style card
133has failed to properly complete. Usually caused by the ISA bus speed being set
134too fast.
135.El
136.Sh CAVEATS
137Early revision DS8390 chips have problems. They lock up whenever the receive
138ring-buffer overflows. They occassionally switch the byte order
139of the length field in the packet ring header (several different causes
140of this related to an off-by-one byte alignment) - resulting in "NIC
141memory corrupt - invalid packet length" messages. The card is reset
142whenever these problems occur, but otherwise there is no problem with
143recovering from these conditions.
144.Pp
145The NIC memory access to 3Com and Novell cards is much slower than it is on
146WD/SMC cards; it's less than 1MB/second on 8bit boards and less than 2MB/second
147on the 16bit cards. This can lead to ring-buffer overruns resulting in
148dropped packets during heavy network traffic.
149.Pp
15016bit Compex cards identify themselves as being 8bit. While these cards will
151work in 8bit mode, much higher performance can be acheived by specifying
152.Em "flags 0x04"
153(force 16bit mode) in your kernel config file. In addition, you should also specify
154.Em "iosize 16384"
155to take advantage of the extra 8k of shared memory that 16bit mode provides.
156.Sh BUGS
157The
158.Nm ed
159driver is a bit too aggressive about resetting the card whenever any bad
160packets are received. As a result, it may throw out some good packets which
161have been received but not yet transfered from the card to main memory.
162.Sh SEE ALSO
163.Xr arp 4 ,
164.Xr netintro 4 ,
165.Xr ifconfig 8
166.Sh HISTORY
167The
168.Nm ed
169device driver first appeared in
170.Fx 1.0 .
171.Sh AUTHOR
171.Sh AUTHORS
172The
173.Nm
172The
173.Nm
174device driver and this manual page were written by David Greenman.
174device driver and this manual page were written by
175.An David Greenman .