182 lines
6.1 KiB
Groff
182 lines
6.1 KiB
Groff
.\" Copyright (c) 1992, 1993
|
|
.\" The Regents of the University of California. All rights reserved.
|
|
.\"
|
|
.\" This software was developed by the Computer Systems Engineering group
|
|
.\" at Lawrence Berkeley Laboratory under DARPA contract BG 91-66 and
|
|
.\" contributed to Berkeley.
|
|
.\"
|
|
.\" Redistribution and use in source and binary forms, with or without
|
|
.\" modification, are permitted provided that the following conditions
|
|
.\" are met:
|
|
.\" 1. Redistributions of source code must retain the above copyright
|
|
.\" notice, this list of conditions and the following disclaimer.
|
|
.\" 2. Redistributions in binary form must reproduce the above copyright
|
|
.\" notice, this list of conditions and the following disclaimer in the
|
|
.\" documentation and/or other materials provided with the distribution.
|
|
.\" 3. All advertising materials mentioning features or use of this software
|
|
.\" must display the following acknowledgement:
|
|
.\" This product includes software developed by the University of
|
|
.\" California, Berkeley and its contributors.
|
|
.\" 4. Neither the name of the University nor the names of its contributors
|
|
.\" may be used to endorse or promote products derived from this software
|
|
.\" without specific prior written permission.
|
|
.\"
|
|
.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
|
|
.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
|
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
|
.\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
|
|
.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
|
|
.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
|
|
.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
|
|
.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
|
|
.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
|
|
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
|
.\" SUCH DAMAGE.
|
|
.\"
|
|
.\" from: Header: le.4,v 1.2 92/10/13 05:31:33 leres Exp
|
|
.\" from: @(#)le.4 8.1 (Berkeley) 6/9/93
|
|
.\" $NetBSD: le.4,v 1.5 1998/06/19 07:43:19 fair Exp $
|
|
.\"
|
|
.Dd June 9, 1993
|
|
.Dt LE 4 sun3
|
|
.Os
|
|
.Sh NAME
|
|
.Nm le
|
|
.Nd AMD 7990 LANCE ethernet interface driver
|
|
.Sh SYNOPSIS
|
|
.Cd "le* at obio0 addr ? level ?"
|
|
.Cd "option LANCE_REVC_BUG"
|
|
.Sh DESCRIPTION
|
|
The
|
|
.Nm
|
|
interface provides access to a 10 Mb/s
|
|
.Tn Ethernet
|
|
network via the
|
|
.Tn AMD
|
|
Am7990 and Am79C90 (CMOS, pin-compatible)
|
|
.Tn LANCE
|
|
(Local Area Network Controller - Ethernet) chip set.
|
|
.Pp
|
|
Each of the host's network addresses
|
|
is specified at boot time with an
|
|
.Dv SIOCSIFADDR
|
|
.Xr ioctl 2 .
|
|
The
|
|
.Nm
|
|
interface employs the Address Resolution Protocol (ARP) described in
|
|
.Xr arp 4
|
|
to dynamically map between Internet and
|
|
.Tn Ethernet
|
|
addresses on the local network.
|
|
.Sh BUGS
|
|
The Am7990 Revision C chips have a bug which causes garbage to
|
|
be inserted in front of the received packet occasionally.
|
|
The work-around is to ignore packets with an invalid destination
|
|
address (garbage will usually not match), by double-checking the
|
|
destination address of every packet in the driver.
|
|
This work-around is enabled with the
|
|
.Dv LANCE_REVC_BUG
|
|
kernel option.
|
|
.Pp
|
|
When
|
|
.Dv LANCE_REVC_BUG
|
|
is enabled, the
|
|
.Nm
|
|
driver executes one or two calls to an inline ethernet address
|
|
comparison function for every received packet.
|
|
On the
|
|
.Tn mc68000
|
|
it is exactly eight instructions of 16-bits each.
|
|
There is one comparison for each unicast packet, and two
|
|
comparisons for each broadcast packet.
|
|
.Pp
|
|
In summary, the cost of the LANCE_REVC_BUG option is:
|
|
.Bl -enum -compact
|
|
.It
|
|
loss of multicast support, and
|
|
.It
|
|
eight extra
|
|
.Tn CPU
|
|
instructions per received packet, sometimes sixteen,
|
|
depending on both the processor, and the type of packet.
|
|
.El
|
|
.Pp
|
|
All sun3 systems are presumed to have bad this revision of the Am7990,
|
|
until proven otherwise.
|
|
Alas, the only way to prove what revision of the chip is in a particular
|
|
system is inspection of the date code on the chip package, with a list of
|
|
what chip revisions were fabricated between which dates.
|
|
.Pp
|
|
Alas, this chip is so old that
|
|
.Tn AMD
|
|
has
|
|
.Qq de-archived
|
|
the information about it; pending a search elsewhere, we don't know how
|
|
to identify the revision C chip from the date codes.
|
|
.Sh DIAGNOSTICS
|
|
.Bl -diag
|
|
.It "le%d: overflow"
|
|
More packets came in from the Ethernet than there was space in the
|
|
receive buffers.
|
|
Packets were missed.
|
|
.It "le%d: receive buffer error"
|
|
Ran out of buffer space, packet dropped.
|
|
.It "le%d: lost carrier"
|
|
The Ethernet carrier disappeared during an attempt to transmit.
|
|
It will finish transmitting the current packet,
|
|
but will not automatically retry transmission if there is a collision.
|
|
.It "le%d: excessive collisions, tdr %d"
|
|
Ethernet extremely busy or jammed,
|
|
outbound packets dropped after 16 attempts to retransmit.
|
|
.Pp
|
|
.Sy TDR
|
|
is
|
|
.Qq Time Domain Reflectometry .
|
|
The
|
|
.Tn LANCE
|
|
TDR value is an internal counter of the interval between the start
|
|
of a transmission, and the occurrence of a collision.
|
|
This value can be used to determine the distance from the Ethernet
|
|
tap to the point on the Ethernet cable that is shorted or open
|
|
(unterminated).
|
|
.It "le%d: dropping chained buffer"
|
|
Packet didn't fit into a single receive buffer, packet dropped.
|
|
.It "le%d: transmit buffer error"
|
|
.Tn LANCE
|
|
ran out of buffer before finishing the transmission of a packet.
|
|
If this error occurrs, the driver software has a bug.
|
|
.It "le%d: underflow"
|
|
.Tn LANCE
|
|
ran out of buffer before finishing the transmission of a packet.
|
|
If this error occurrs, the driver software has a bug.
|
|
.It "le%d: controller failed to initialize"
|
|
Driver failed to start the AM7990
|
|
.Tn LANCE .
|
|
This is potentially a hardware failure.
|
|
.It "le%d: memory error"
|
|
.Tn RAM
|
|
failed to respond within the timeout when the
|
|
.Tn LANCE
|
|
wanted to read or write it.
|
|
This is potentially a hardware failure.
|
|
.It "le%d: receiver disabled"
|
|
The
|
|
.Tn LANCE
|
|
receiver was turned off due to an error.
|
|
.It "le%d: transmitter disabled"
|
|
The
|
|
.Tn LANCE
|
|
transmitter was turned off due to an error.
|
|
.El
|
|
.Sh SEE ALSO
|
|
.Xr ie 4 ,
|
|
.Xr intro 4 ,
|
|
.Xr inet 4 ,
|
|
.Xr arp 4
|
|
.Rs
|
|
.%R "Am79C90 - CMOS Local Area Network Controller for Ethernet"
|
|
.%D May 1994
|
|
.%N 17881
|
|
.%O Advanced Micro Devices
|
|
.Re
|