1 .\" $NetBSD: le.4,v 1.22 2004/10/04 19:12:52 rumble Exp $
4 .\" Copyright (c) 1992, 1993
5 .\" The Regents of the University of California. All rights reserved.
7 .\" This software was developed by the Computer Systems Engineering group
8 .\" at Lawrence Berkeley Laboratory under DARPA contract BG 91-66 and
9 .\" contributed to Berkeley.
11 .\" Redistribution and use in source and binary forms, with or without
12 .\" modification, are permitted provided that the following conditions
14 .\" 1. Redistributions of source code must retain the above copyright
15 .\" notice, this list of conditions and the following disclaimer.
16 .\" 2. Redistributions in binary form must reproduce the above copyright
17 .\" notice, this list of conditions and the following disclaimer in the
18 .\" documentation and/or other materials provided with the distribution.
19 .\" 3. Neither the name of the University nor the names of its contributors
20 .\" may be used to endorse or promote products derived from this software
21 .\" without specific prior written permission.
23 .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
24 .\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
25 .\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
26 .\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
27 .\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
28 .\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
29 .\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
30 .\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
31 .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
32 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
35 .\" from: Header: le.4,v 1.2 92/10/13 05:31:33 leres Exp
36 .\" from: @(#)le.4 8.1 (Berkeley) 6/9/93
44 .Nd "AMD Am7900 LANCE and Am79C9xx PCnet Ethernet interface driver"
46 To compile this driver into the kernel,
47 place the following line in your
48 kernel configuration file:
49 .Bd -ragged -offset indent
53 Alternatively, to load the driver as a
54 module at boot time, place the following line in
56 .Bd -literal -offset indent
60 For C-Bus non-PnP cards, the port address and the IRQ number have to be
62 .Pa /boot/device.hints :
63 .Cd hint.le.0.at="isa"
64 .Cd hint.le.0.port="0x03d0"
67 For ISA non-PnP cards, the port address as well as the IRQ and the DRQ
68 numbers have to be specified in
69 .Pa /boot/device.hints :
70 .Cd hint.le.0.at="isa"
71 .Cd hint.le.0.port="0x280"
72 .Cd hint.le.0.irq="10"
77 driver provides support for Ethernet adapters based on the
79 Am7990 and Am79C90 (CMOS, pin-compatible)
80 Local Area Network Controller for Ethernet
86 driver also supports Ethernet adapters based on the
88 family of chips, which are single-chip implementations of a
90 chip and a DMA engine.
91 This includes a superset of the
93 bus Ethernet chips supported by the
98 driver treats all of these
100 bus Ethernet chips as an
101 .Tn AMD Am79C970 PCnet-PCI
102 and does not support the additional features like the MII bus and burst mode of
103 .Tn AMD Am79C971 PCnet-FAST
107 driver should be preferred for the latter.
111 driver aims at supporting as many different chips on as many different
112 platforms as possible,
113 partially at the cost of the best performance with some of these.
117 driver supports reception and transmission of extended frames for
119 Selective reception of multicast Ethernet frames is provided by a 64-bit mask;
120 multicast destination addresses are hashed to a bit entry using the Ethernet
130 bus Ethernet adapters which are based on the following chips:
134 .Tn AMD Am7990 and Am79C90 LANCE
136 .Tn AMD Am79C960 PCnet-ISA
138 .Tn AMD Am79C961 PCnet-ISA+
140 .Tn AMD Am79C961A PCnet-ISA II
143 This includes support for the following Ethernet adapters:
149 .Tn Contec C-NET(98)S
158 .\" .Tn Digital DEPCA
167 .Tn AMD AM1500T/AM2100
173 .Tn Allied Telesyn AT-1500
175 .Tn Boca LANCard Combo
177 .Tn Cabletron E2100 Series DNI
179 .Tn Cabletron E2200 Single Chip
181 .Tn Melco Inc. LGY-IV
185 .Tn Racal InterLan EtherBlaster
190 driver does not support the selection of media types and options via
196 bus Ethernet adapters.
200 .\" bus Ethernet cards supported by the
204 .\" .Bl -bullet -compact
211 .\" bus Ethernet cards supported by the
215 .\" .Bl -bullet -compact
217 .\" .Tn SKNET Personal MC2
224 bus Ethernet chips supported by the
230 .Tn AMD Am53C974/Am79C970/Am79C974 PCnet-PCI
232 .Tn AMD Am79C970A PCnet-PCI II
234 .Tn AMD Am79C971 PCnet-FAST
236 .Tn AMD Am79C972 PCnet-FAST+
238 .Tn AMD Am79C973/Am79C975 PCnet-FAST III
240 .Tn AMD Am79C976 PCnet-PRO
242 .Tn AMD Am79C978 PCnet-Home
247 driver supports the following media types with these chips:
248 .Bl -tag -width ".Cm 10base5/AUI"
250 Enable autoselection of the media type.
254 Select AUI/BNC media.
257 The following media option is supported with these media types:
258 .Bl -tag -width ".Cm full-duplex"
260 Select full duplex operation.
267 driver does not support selecting 100Mbps (Fast Ethernet) media types.
271 driver supports the on-board
276 The following media types are available with these:
277 .Bl -tag -width ".Cm 10base5/AUI"
279 Enable autoselection of the media type.
286 When using autoselection, a default media type is selected for use by
287 examining all ports for carrier.
288 The first media type with which a carrier is detected will be selected.
289 Additionally, if carrier is dropped on a port, the driver will switch
290 between the possible ports until one with carrier is found.
294 .\" driver also supports
298 .\" .Bl -bullet -compact
302 .\" and Buffered Ethernet
303 .\" (Sun P/N 501-1860)
308 .\" and Buffered Ethernet
309 .\" (Sun P/N 501-2015)
312 For further information on configuring media types and options, see
317 More packets came in from the Ethernet than there was space in the
321 .It "le%d: receive buffer error"
324 ran out of buffer space, packet dropped.
325 .It "le%d: lost carrier"
326 The Ethernet carrier disappeared during an attempt to transmit.
329 will finish transmitting the current packet,
330 but will not automatically retry transmission if there is a collision.
331 .It "le%d: excessive collisions, tdr %d"
332 The Ethernet was extremely busy or jammed,
333 outbound packets were dropped after 16 attempts to retransmit.
336 is the abbreviation of
337 .Qq Time Domain Reflectometry .
338 The optionally reported TDR value is an internal counter of the interval
339 between the start of a transmission and the occurrence of a collision.
340 This value can be used to determine the distance from the Ethernet tap to
341 the point on the Ethernet cable that is shorted or open (unterminated).
342 .It "le%d: dropping chained buffer"
343 A packet did not fit into a single receive buffer and was dropped.
346 driver allocates buffers large enough to receive maximum sized Ethernet
347 packets, this means some other station on the LAN transmitted a packet
348 larger than allowed by the Ethernet standard.
349 .It "le%d: transmit buffer error"
352 ran out of buffer space before finishing the transmission of a packet.
353 If this error occurs, the driver software has a bug.
354 .It "le%d: underflow"
357 ran out of buffer space before finishing the transmission of a packet.
358 If this error occurs, the driver software has a bug.
359 .It "le%d: controller failed to initialize"
360 Driver failed to start the
362 This is potentially a hardware failure.
363 .It "le%d: memory error"
364 RAM failed to respond within the timeout when the
366 wanted to read or write it.
367 This is potentially a hardware failure.
368 .It "le%d: receiver disabled"
371 was turned off due to an error.
372 .It "le%d: transmitter disabled"
373 The transmitter of the
375 was turned off due to an error.
387 driver was ported from
389 and first appeared in
393 version in turn was derived from the
395 driver which first appeared in
401 .An "Marius Strobl" Aq marius@FreeBSD.org .
403 .\" The Am7990 Revision C chips have a bug which causes garbage to be inserted
404 .\" in front of the received packet occasionally.
405 .\" The work-around is to ignore packets with an invalid destination address
406 .\" (garbage will usually not match), by double-checking the destination
407 .\" address of every packet in the driver.
408 .\" This work-around can be enabled with the
409 .\" .Dv LANCE_REVC_BUG
413 .\" .Dv LANCE_REVC_BUG
416 .\" driver executes one or two calls to an inline Ethernet address comparison
417 .\" function for every received packet.
420 .\" it is exactly eight instructions of 16 bits each.
421 .\" There is one comparison for each unicast packet, and two comparisons for
422 .\" each broadcast packet.
424 .\" In summary, the cost of the LANCE_REVC_BUG option is:
425 .\" .Bl -enum -compact
427 .\" loss of multicast support, and
431 .\" instructions per received packet, sometimes sixteen, depending on both the
432 .\" processor, and the type of packet.
435 .\" All sun3 systems are presumed to have this bad revision of the Am7990,
436 .\" until proven otherwise.
437 .\" Alas, the only way to prove what revision of the chip is in a particular
438 .\" system is inspection of the date code on the chip package,
439 .\" to compare against a list of what chip revisions were fabricated between
442 .\" Alas, the Am7990 chip is so old that
446 .\" the production information about it; pending a search elsewhere, we do not
447 .\" know how to identify the revision C chip from the date codes.