kernel: Drop ISA support from most remaining drivers that had some.
[dragonfly.git] / share / man / man4 / ed.4
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 .\" $FreeBSD: src/share/man/man4/ed.4,v 1.19.2.10 2003/02/17 21:20:39 trhodes Exp $
32 .\"
33 .Dd October 28, 1995
34 .Dt ED 4
35 .Os
36 .Sh NAME
37 .Nm ed
38 .Nd NE-2000 and WD-80x3 ethernet device driver
39 .Sh SYNOPSIS
40 .Cd "device miibus"
41 .Cd "device ed"
42 .Sh DESCRIPTION
43 The
44 .Nm
45 driver provides support for 8 and 16bit ethernet cards that are based on
46 the National Semiconductor DS8390 and similar NICs manufactured by other companies.
47 .Pp
48 It supports all 80x3 series ethernet cards manufactured by Western Digital and SMC,
49 the SMC Ultra, the 3Com 3c503, the Novell NE1000/NE2000 and compatible cards,
50 the HP PC Lan+ and the Digital Equipment EtherWorks DE305 card.
51 PCI and PC Card devices are supported.
52 .Pp
53 The
54 .Nm
55 driver uses a unique multi-buffering mechanism to achieve high transmit performance.
56 .Pp
57 In addition to the standard port and IRQ specifications, the
58 .Nm
59 driver also supports a number of
60 .Cd flags
61 which can force 8/16bit mode, enable/disable multi-buffering, and select the default
62 interface type (AUI/BNC, and for cards with twisted pair, AUI/10BaseT).
63 .Pp
64 When using a 3c503 card, the AUI connection may be selected by specifying the
65 .Cm link2
66 option to
67 .Xr ifconfig 8
68 (BNC is the default).
69 .Sh DIAGNOSTICS
70 .Bl -diag
71 .It "ed%d: kernel configured irq %d doesn't match board configured irq %d."
72 The IRQ number that was specified in the kernel config file (and then compiled
73 into the kernel) differs from the IRQ that has been set on the interface card.
74 .It "ed%d: failed to clear shared memory at %x - check configuration."
75 When the card was probed at system boot time, the
76 .Nm
77 driver found that it could not clear the card's shared memory.
78 This is most commonly
79 caused by a BIOS extension ROM being configured in the same address space as the
80 ethernet card's shared memory.
81 Either find the offending card and change its BIOS
82 ROM to be at an address that doesn't conflict, or change the
83 .Cd iomem
84 option in the kernel config file so that the card's shared memory is mapped at a
85 non-conflicting address.
86 .It "ed%d: Invalid irq configuration (%d) must be 2-5 for 3c503."
87 The IRQ number that was specified in the kernel config file is not valid for
88 the 3Com 3c503 card.
89 The 3c503 can only be assigned to IRQs 2 through 5.
90 .It "ed%d: Cannot find start of RAM."
91 .It "ed%d: Cannot find any RAM, start : %d, x = %d."
92 The probe of a Gateway card was unsuccessful in configuring the card's packet memory.
93 This likely indicates that the card was improperly recognized as a Gateway or that
94 the card is defective.
95 .It "ed: packets buffered, but transmitter idle."
96 Indicates a logic problem in the driver.
97 Should never happen.
98 .It "ed%d: device timeout"
99 Indicates that an expected transmitter interrupt didn't occur.
100 This condition could also be caused if the kernel is configured for a
101 different IRQ channel than the one the card is actually using.
102 If that is the case, you will have to either reconfigure the card
103 using a DOS utility or set the jumpers on the card appropriately.
104 .It "ed%d: NIC memory corrupt - invalid packet length %d."
105 Indicates that a packet was received with a packet length that was either larger than
106 the maximum size or smaller than the minimum size allowed by the IEEE 802.3 standard.
107 .It "ed%d: remote transmit DMA failed to complete."
108 This indicates that a programmed I/O transfer to an NE1000 or NE2000 style card
109 has failed to properly complete.
110 .El
111 .Sh SEE ALSO
112 .Xr arp 4 ,
113 .Xr ifmedia 4 ,
114 .Xr miibus 4 ,
115 .Xr netintro 4 ,
116 .Xr ng_ether 4 ,
117 .Xr ifconfig 8
118 .Sh HISTORY
119 The
120 .Nm
121 device driver first appeared in
122 .Fx 1.0 .
123 .Sh AUTHORS
124 The
125 .Nm
126 device driver and this manual page were written by
127 .An David Greenman .
128 .Sh CAVEATS
129 Early revision DS8390 chips have problems.
130 They lock up whenever the receive
131 ring-buffer overflows.
132 They occasionally switch the byte order
133 of the length field in the packet ring header (several different causes
134 of this related to an off-by-one byte alignment) - resulting in
135 .Qq Li "NIC memory corrupt - invalid packet length"
136 messages.
137 The card is reset
138 whenever these problems occur, but otherwise there is no problem with
139 recovering from these conditions.
140 .Pp
141 The NIC memory access to 3Com and Novell cards is much slower than it is on
142 WD/SMC cards; it's less than 1MB/second on 8bit boards and less than 2MB/second
143 on the 16bit cards.
144 This can lead to ring-buffer overruns resulting in
145 dropped packets during heavy network traffic.
146 .Pp
147 16bit Compex cards identify themselves as being 8bit.
148 While these cards will
149 work in 8bit mode, much higher performance can be achieved by specifying
150 .Cd "flags 0x04"
151 (force 16bit mode) in your kernel config file.
152 In addition, you should also specify
153 .Cd "iosiz 16384"
154 to take advantage of the extra 8K of shared memory that 16bit mode provides.
155 .Sh BUGS
156 The
157 .Nm
158 driver is a bit too aggressive about resetting the card whenever any bad
159 packets are received.
160 As a result, it may throw out some good packets which
161 have been received but not yet transferred from the card to main memory.