xref: /freebsd/share/man/man4/le.4 (revision e9646f6441b5803d8086dfbbb4036fb3092938c2)
135591247SMarius Strobl.\"	$NetBSD: le.4,v 1.22 2004/10/04 19:12:52 rumble Exp $
235591247SMarius Strobl.\"
335591247SMarius Strobl.\"-
435591247SMarius Strobl.\" Copyright (c) 1992, 1993
535591247SMarius Strobl.\"	The Regents of the University of California.  All rights reserved.
635591247SMarius Strobl.\"
735591247SMarius Strobl.\" This software was developed by the Computer Systems Engineering group
835591247SMarius Strobl.\" at Lawrence Berkeley Laboratory under DARPA contract BG 91-66 and
935591247SMarius Strobl.\" contributed to Berkeley.
1035591247SMarius Strobl.\"
1135591247SMarius Strobl.\" Redistribution and use in source and binary forms, with or without
1235591247SMarius Strobl.\" modification, are permitted provided that the following conditions
1335591247SMarius Strobl.\" are met:
1435591247SMarius Strobl.\" 1. Redistributions of source code must retain the above copyright
1535591247SMarius Strobl.\"    notice, this list of conditions and the following disclaimer.
1635591247SMarius Strobl.\" 2. Redistributions in binary form must reproduce the above copyright
1735591247SMarius Strobl.\"    notice, this list of conditions and the following disclaimer in the
1835591247SMarius Strobl.\"    documentation and/or other materials provided with the distribution.
1935591247SMarius Strobl.\" 3. Neither the name of the University nor the names of its contributors
2035591247SMarius Strobl.\"    may be used to endorse or promote products derived from this software
2135591247SMarius Strobl.\"    without specific prior written permission.
2235591247SMarius Strobl.\"
2335591247SMarius Strobl.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
2435591247SMarius Strobl.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
2535591247SMarius Strobl.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
2635591247SMarius Strobl.\" ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
2735591247SMarius Strobl.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
2835591247SMarius Strobl.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
2935591247SMarius Strobl.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
3035591247SMarius Strobl.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
3135591247SMarius Strobl.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
3235591247SMarius Strobl.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
3335591247SMarius Strobl.\" SUCH DAMAGE.
3435591247SMarius Strobl.\"
3535591247SMarius Strobl.\"	from: Header: le.4,v 1.2 92/10/13 05:31:33 leres Exp
3635591247SMarius Strobl.\"	from: @(#)le.4	8.1 (Berkeley) 6/9/93
3735591247SMarius Strobl.\" $FreeBSD$
3835591247SMarius Strobl.\"
3935591247SMarius Strobl.Dd January 30, 2006
4035591247SMarius Strobl.Dt LE 4
4135591247SMarius Strobl.Os
4235591247SMarius Strobl.Sh NAME
4335591247SMarius Strobl.Nm le
4435591247SMarius Strobl.Nd "AMD Am7900 LANCE and Am79C9xx PCnet Ethernet interface driver"
4535591247SMarius Strobl.Sh SYNOPSIS
4635591247SMarius StroblTo compile this driver into the kernel,
4735591247SMarius Stroblplace the following line in your
4835591247SMarius Stroblkernel configuration file:
4935591247SMarius Strobl.Bd -ragged -offset indent
5035591247SMarius Strobl.Cd "device le"
5135591247SMarius Strobl.Ed
5235591247SMarius Strobl.Pp
5335591247SMarius StroblAlternatively, to load the driver as a
5435591247SMarius Stroblmodule at boot time, place the following line in
5535591247SMarius Strobl.Xr loader.conf 5 :
5635591247SMarius Strobl.Bd -literal -offset indent
5735591247SMarius Stroblif_le_load="YES"
5835591247SMarius Strobl.Ed
5935591247SMarius Strobl.\" .Pp
6035591247SMarius Strobl.\" In
6135591247SMarius Strobl.\" .Pa /boot/device.hints :
6235591247SMarius Strobl.\" .Cd hint.le.0.at="isa"
6335591247SMarius Strobl.\" .Cd hint.le.0.port="0x280"
6435591247SMarius Strobl.\" .Cd hint.le.0.irq="10"
6535591247SMarius Strobl.\" .Cd hint.le.0.drq="0"
6635591247SMarius Strobl.Sh DESCRIPTION
6735591247SMarius StroblThe
6835591247SMarius Strobl.Nm
6935591247SMarius Strobldriver provides support for Ethernet adapters based on the
7035591247SMarius Strobl.Tn AMD
7135591247SMarius StroblAm7990 and Am79C90 (CMOS, pin-compatible)
7235591247SMarius StroblLocal Area Network Controller for Ethernet
7335591247SMarius Strobl.Pq Tn LANCE
7435591247SMarius Stroblchip set.
7535591247SMarius Strobl.Pp
7635591247SMarius StroblThe
7735591247SMarius Strobl.Nm
7835591247SMarius Strobldriver also supports PCnet adapters based on the
7935591247SMarius Strobl.Tn AMD 79C9xx
8035591247SMarius Stroblfamily of chips, which are single-chip implementations of a
8135591247SMarius Strobl.Tn LANCE
82e9646f64SMarius Stroblchip and a DMA engine.
83e9646f64SMarius StroblThis includes a superset of the
8435591247SMarius Strobl.Tn PCI
85e9646f64SMarius Stroblbus Ethernet chip sets supported by the
8635591247SMarius Strobl.Xr pcn 4
8735591247SMarius Strobldriver.
8835591247SMarius StroblThe
8935591247SMarius Strobl.Nm
90e9646f64SMarius Strobldriver treats all of these
91e9646f64SMarius Strobl.Tn PCI
92e9646f64SMarius Stroblbus Ethernet chip sets as an
93e9646f64SMarius Strobl.Tn AMD Am79C970 PCnet-PCI
94e9646f64SMarius Strobland does not support the additional features like the MII bus and burst mode of
95e9646f64SMarius Strobl.Tn AMD Am79C971 PCnet-FAST
96e9646f64SMarius Strobland greater chip sets.
97e9646f64SMarius StroblThus the
9835591247SMarius Strobl.Xr pcn 4
99e9646f64SMarius Strobldriver should be preferred for the latter.
10035591247SMarius Strobl.Pp
10135591247SMarius StroblThe
10235591247SMarius Strobl.Nm
10335591247SMarius Strobldriver supports reception and transmission of extended frames for
10435591247SMarius Strobl.Xr vlan 4 .
10535591247SMarius StroblSelective reception of multicast Ethernet frames is provided by a 64-bit mask;
10635591247SMarius Stroblmulticast destination addresses are hashed to a bit entry using the Ethernet
10735591247SMarius StroblCRC function.
10835591247SMarius Strobl.Sh HARDWARE
10935591247SMarius Strobl.\" .Ss ISA
11035591247SMarius Strobl.\" The
11135591247SMarius Strobl.\" .Tn ISA
11235591247SMarius Strobl.\" bus Ethernet cards supported by the
11335591247SMarius Strobl.\" .Nm
11435591247SMarius Strobl.\" driver are:
11535591247SMarius Strobl.\" .Pp
11635591247SMarius Strobl.\" .Bl -bullet -compact
11735591247SMarius Strobl.\" .It
11835591247SMarius Strobl.\" .Tn BICC Isolan
11935591247SMarius Strobl.\" .It
12035591247SMarius Strobl.\" .Tn Novell NE2100
12135591247SMarius Strobl.\" .It
12235591247SMarius Strobl.\" .Tn Digital DEPCA
12335591247SMarius Strobl.\" .El
12435591247SMarius Strobl.\" .Ss EISA
12535591247SMarius Strobl.\" The
12635591247SMarius Strobl.\" .Tn EISA
12735591247SMarius Strobl.\" bus Ethernet cards supported by the
12835591247SMarius Strobl.\" .Nm
12935591247SMarius Strobl.\" driver are:
13035591247SMarius Strobl.\" .Pp
13135591247SMarius Strobl.\" .Bl -bullet -compact
13235591247SMarius Strobl.\" .It
13335591247SMarius Strobl.\" .Tn DEC DE422
13435591247SMarius Strobl.\" .El
13535591247SMarius Strobl.\" .Ss MCA
13635591247SMarius Strobl.\" The
13735591247SMarius Strobl.\" .Tn MCA
13835591247SMarius Strobl.\" bus Ethernet cards supported by the
13935591247SMarius Strobl.\" .Nm
14035591247SMarius Strobl.\" driver are:
14135591247SMarius Strobl.\" .Pp
14235591247SMarius Strobl.\" .Bl -bullet -compact
14335591247SMarius Strobl.\" .It
14435591247SMarius Strobl.\" .Tn SKNET Personal MC2
14535591247SMarius Strobl.\" .It
14635591247SMarius Strobl.\" .Tn SKNET MC2+
14735591247SMarius Strobl.\" .El
14835591247SMarius Strobl.Ss PCI
14935591247SMarius StroblThe
15035591247SMarius Strobl.Tn PCI
15135591247SMarius Stroblbus Ethernet chip sets supported by the
15235591247SMarius Strobl.Nm
15335591247SMarius Strobldriver are:
15435591247SMarius Strobl.Pp
15535591247SMarius Strobl.Bl -bullet -compact
15635591247SMarius Strobl.It
15735591247SMarius Strobl.Tn AMD Am53C974/Am79C970/Am79C974 PCnet-PCI
15835591247SMarius Strobl.It
15935591247SMarius Strobl.Tn AMD Am79C970A PCnet-PCI II
16035591247SMarius Strobl.It
16135591247SMarius Strobl.Tn AMD Am79C971 PCnet-FAST
16235591247SMarius Strobl.It
16335591247SMarius Strobl.Tn AMD Am79C972 PCnet-FAST+
16435591247SMarius Strobl.It
16535591247SMarius Strobl.Tn AMD Am79C973/Am79C975 PCnet-FAST III
16635591247SMarius Strobl.It
16735591247SMarius Strobl.Tn AMD Am79C976 PCnet-PRO
16835591247SMarius Strobl.It
16935591247SMarius Strobl.Tn AMD Am79C978 PCnet-Home
17035591247SMarius Strobl.El
17135591247SMarius Strobl.Pp
17235591247SMarius StroblThe
17335591247SMarius Strobl.Nm
17435591247SMarius Strobldriver supports the following media types with these chip sets:
17535591247SMarius Strobl.Pp
17635591247SMarius Strobl.Bl -tag -width xxxxxxxxxxxxxxxxxxxx
17735591247SMarius Strobl.It autoselect
17835591247SMarius StroblEnable autoselection of the media type.
17935591247SMarius Strobl.It 10baseT/UTP
18035591247SMarius StroblSelect UTP media.
18135591247SMarius Strobl.It 10base5/AUI
18235591247SMarius StroblSelect AUI/BNC media.
18335591247SMarius Strobl.El
18435591247SMarius Strobl.Pp
18535591247SMarius StroblThe following media option is supported with these media types:
18635591247SMarius Strobl.Pp
18735591247SMarius Strobl.Bl -tag -width xxxxxxxxxxxxxxxxxxxx
18835591247SMarius Strobl.It full-duplex
18935591247SMarius StroblSelect full duplex operation.
19035591247SMarius Strobl.El
19135591247SMarius Strobl.Pp
19235591247SMarius StroblNote that unlike the
19335591247SMarius Strobl.Xr pcn 4
19435591247SMarius Strobldriver, the
19535591247SMarius Strobl.Nm
19635591247SMarius Strobldriver does not support selecting 100Mbps (Fast Ethernet) media types.
19735591247SMarius Strobl.Ss sparc64
19835591247SMarius StroblThe
19935591247SMarius Strobl.Nm
20035591247SMarius Strobldriver supports the on-board
20135591247SMarius Strobl.Tn LANCE
20235591247SMarius Stroblinterfaces found in
20335591247SMarius Strobl.Tn Sun Ultra 1
20435591247SMarius Stroblmachines.
20535591247SMarius StroblThe following media types are available with these:
20635591247SMarius Strobl.Pp
20735591247SMarius Strobl.Bl -tag -width xxxxxxxxxxxxxxxxxxxx
20835591247SMarius Strobl.It autoselect
20935591247SMarius StroblEnable autoselection of the media type.
21035591247SMarius Strobl.It 10baseT/UTP
21135591247SMarius StroblSelect UTP media.
21235591247SMarius Strobl.It 10base5/AUI
21335591247SMarius StroblSelect AUI media.
21435591247SMarius Strobl.El
21535591247SMarius Strobl.Pp
21635591247SMarius StroblWhen using autoselection, a default media type is selected for use by
21735591247SMarius Stroblexamining all ports for carrier.
21835591247SMarius StroblThe first media type with which a carrier is detected will be selected.
21935591247SMarius StroblAdditionally, if carrier is dropped on a port, the driver will switch
22035591247SMarius Stroblbetween the possible ports until one with carrier is found.
22135591247SMarius Strobl.\" .Pp
22235591247SMarius Strobl.\" The
22335591247SMarius Strobl.\" .Nm
22435591247SMarius Strobl.\" driver also supports
22535591247SMarius Strobl.\" .Tn SBus
22635591247SMarius Strobl.\" Ethernet cards.
22735591247SMarius Strobl.\" These include:
22835591247SMarius Strobl.\" .Bl -bullet -compact
22935591247SMarius Strobl.\" .It
23035591247SMarius Strobl.\" SBE/S
23135591247SMarius Strobl.\" .Tn SCSI
23235591247SMarius Strobl.\" and Buffered Ethernet
23335591247SMarius Strobl.\" (Sun P/N 501-1860)
23435591247SMarius Strobl.\" .It
23535591247SMarius Strobl.\" FSBE/S
23635591247SMarius Strobl.\" Fast
23735591247SMarius Strobl.\" .Tn SCSI
23835591247SMarius Strobl.\" and Buffered Ethernet
23935591247SMarius Strobl.\" (Sun P/N 501-2015)
24035591247SMarius Strobl.\" .El
24135591247SMarius Strobl.Pp
24235591247SMarius StroblFor further information on configuring media types and options, see
24335591247SMarius Strobl.Xr ifconfig 8 .
24435591247SMarius Strobl.Sh DIAGNOSTICS
24535591247SMarius Strobl.Bl -diag
24635591247SMarius Strobl.It "le%d: overflow"
24735591247SMarius StroblMore packets came in from the Ethernet than there was space in the
24835591247SMarius Strobl.Tn LANCE
24935591247SMarius Stroblreceive buffers.
25035591247SMarius StroblPackets were missed.
25135591247SMarius Strobl.It "le%d: receive buffer error"
25235591247SMarius StroblThe
25335591247SMarius Strobl.Tn LANCE
25435591247SMarius Stroblran out of buffer space, packet dropped.
25535591247SMarius Strobl.It "le%d: lost carrier"
25635591247SMarius StroblThe Ethernet carrier disappeared during an attempt to transmit.
25735591247SMarius StroblThe
25835591247SMarius Strobl.Tn LANCE
25935591247SMarius Stroblwill finish transmitting the current packet,
26035591247SMarius Stroblbut will not automatically retry transmission if there is a collision.
26135591247SMarius Strobl.It "le%d: excessive collisions, tdr %d"
26235591247SMarius StroblThe Ethernet was extremely busy or jammed,
26335591247SMarius Strobloutbound packets were dropped after 16 attempts to retransmit.
26435591247SMarius Strobl.Pp
26535591247SMarius StroblTDR
26635591247SMarius Stroblis the abbreviation of
26735591247SMarius Strobl.Qq Time Domain Reflectometry .
26835591247SMarius StroblThe optionally reported TDR value is an internal counter of the interval
26935591247SMarius Stroblbetween the start of a transmission and the occurrence of a collision.
27035591247SMarius StroblThis value can be used to determine the distance from the Ethernet tap to
27135591247SMarius Stroblthe point on the Ethernet cable that is shorted or open (unterminated).
27235591247SMarius Strobl.It "le%d: dropping chained buffer"
27335591247SMarius StroblA packet did not fit into a single receive buffer and was dropped.
27435591247SMarius StroblSince the
27535591247SMarius Strobl.Nm
27635591247SMarius Strobldriver allocates buffers large enough to receive maximum sized Ethernet
27735591247SMarius Stroblpackets, this means some other station on the LAN transmitted a packet
27835591247SMarius Strobllarger than allowed by the Ethernet standard.
27935591247SMarius Strobl.It "le%d: transmit buffer error"
28035591247SMarius StroblThe
28135591247SMarius Strobl.Tn LANCE
28235591247SMarius Stroblran out of buffer space before finishing the transmission of a packet.
28335591247SMarius StroblIf this error occurs, the driver software has a bug.
28435591247SMarius Strobl.It "le%d: underflow"
28535591247SMarius StroblThe
28635591247SMarius Strobl.Tn LANCE
28735591247SMarius Stroblran out of buffer space before finishing the transmission of a packet.
28835591247SMarius StroblIf this error occurs, the driver software has a bug.
28935591247SMarius Strobl.It "le%d: controller failed to initialize"
29035591247SMarius StroblDriver failed to start the
29135591247SMarius Strobl.Tn LANCE .
29235591247SMarius StroblThis is potentially a hardware failure.
29335591247SMarius Strobl.It "le%d: memory error"
29435591247SMarius StroblRAM failed to respond within the timeout when the
29535591247SMarius Strobl.Tn LANCE
29635591247SMarius Stroblwanted to read or write it.
29735591247SMarius StroblThis is potentially a hardware failure.
29835591247SMarius Strobl.It "le%d: receiver disabled"
29935591247SMarius StroblThe receiver of the
30035591247SMarius Strobl.Tn LANCE
30135591247SMarius Stroblwas turned off due to an error.
30235591247SMarius Strobl.It "le%d: transmitter disabled"
30335591247SMarius StroblThe transmitter of the
30435591247SMarius Strobl.Tn LANCE
30535591247SMarius Stroblwas turned off due to an error.
30635591247SMarius Strobl.El
30735591247SMarius Strobl.Sh SEE ALSO
30835591247SMarius Strobl.Xr arp 4 ,
30935591247SMarius Strobl.Xr intro 4 ,
31035591247SMarius Strobl.Xr netintro 4 ,
31135591247SMarius Strobl.Xr pcn 4 ,
31235591247SMarius Strobl.Xr vlan 4 ,
31335591247SMarius Strobl.Xr ifconfig 8
31435591247SMarius Strobl.Sh HISTORY
31535591247SMarius StroblThe
31635591247SMarius Strobl.Nm
31735591247SMarius Strobldriver was ported from
31835591247SMarius Strobl.Nx
31935591247SMarius Strobland first appeared in
32035591247SMarius Strobl.Fx 6.1 .
32135591247SMarius StroblThe
32235591247SMarius Strobl.Nx
32335591247SMarius Stroblversion in turn was derived from the
32435591247SMarius Strobl.Nm
32535591247SMarius Strobldriver which first appeared in
32635591247SMarius Strobl.Bx 4.4 .
32735591247SMarius Strobl.Sh AUTHORS
32835591247SMarius StroblThe
32935591247SMarius Strobl.Nm
33035591247SMarius Strobldriver was ported by
33135591247SMarius Strobl.An "Marius Strobl" Aq marius@FreeBSD.org .
33235591247SMarius Strobl.\" .Sh BUGS
33335591247SMarius Strobl.\" The Am7990 Revision C chips have a bug which causes garbage to be inserted
33435591247SMarius Strobl.\" in front of the received packet occasionally.
33535591247SMarius Strobl.\" The work-around is to ignore packets with an invalid destination address
33635591247SMarius Strobl.\" (garbage will usually not match), by double-checking the destination
33735591247SMarius Strobl.\" address of every packet in the driver.
33835591247SMarius Strobl.\" This work-around can be enabled with the
33935591247SMarius Strobl.\" .Dv LANCE_REVC_BUG
34035591247SMarius Strobl.\" kernel option.
34135591247SMarius Strobl.\" .Pp
34235591247SMarius Strobl.\" When
34335591247SMarius Strobl.\" .Dv LANCE_REVC_BUG
34435591247SMarius Strobl.\" is enabled, the
34535591247SMarius Strobl.\" .Nm
34635591247SMarius Strobl.\" driver executes one or two calls to an inline Ethernet address comparison
34735591247SMarius Strobl.\" function for every received packet.
34835591247SMarius Strobl.\" On the
34935591247SMarius Strobl.\" .Tn MC68000
35035591247SMarius Strobl.\" it is exactly eight instructions of 16 bits each.
35135591247SMarius Strobl.\" There is one comparison for each unicast packet, and two comparisons for
35235591247SMarius Strobl.\" each broadcast packet.
35335591247SMarius Strobl.\" .Pp
35435591247SMarius Strobl.\" In summary, the cost of the LANCE_REVC_BUG option is:
35535591247SMarius Strobl.\" .Bl -enum -compact
35635591247SMarius Strobl.\" .It
35735591247SMarius Strobl.\" loss of multicast support, and
35835591247SMarius Strobl.\" .It
35935591247SMarius Strobl.\" eight extra
36035591247SMarius Strobl.\" .Tn CPU
36135591247SMarius Strobl.\" instructions per received packet, sometimes sixteen, depending on both the
36235591247SMarius Strobl.\" processor, and the type of packet.
36335591247SMarius Strobl.\" .El
36435591247SMarius Strobl.\" .Pp
36535591247SMarius Strobl.\" All sun3 systems are presumed to have this bad revision of the Am7990,
36635591247SMarius Strobl.\" until proven otherwise.
36735591247SMarius Strobl.\" Alas, the only way to prove what revision of the chip is in a particular
36835591247SMarius Strobl.\" system is inspection of the date code on the chip package,
36935591247SMarius Strobl.\" to compare against a list of what chip revisions were fabricated between
37035591247SMarius Strobl.\" which dates.
37135591247SMarius Strobl.\" .Pp
37235591247SMarius Strobl.\" Alas, the Am7990 chip is so old that
37335591247SMarius Strobl.\" .Tn AMD
37435591247SMarius Strobl.\" has
37535591247SMarius Strobl.\" .Qq de-archived
37635591247SMarius Strobl.\" the production information about it; pending a search elsewhere, we do not
37735591247SMarius Strobl.\" know how to identify the revision C chip from the date codes.
378