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.\" 39e71d18f4SMarius Strobl.Dd November 9, 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 590ab9d31cSMarius Strobl.Pp 600ab9d31cSMarius StroblFor C-Bus non-PnP cards, the port address and the IRQ number have to be 610ab9d31cSMarius Stroblspecified in 620ab9d31cSMarius Strobl.Pa /boot/device.hints : 630ab9d31cSMarius Strobl.Cd hint.le.0.at="isa" 640ab9d31cSMarius Strobl.Cd hint.le.0.port="0x03d0" 650ab9d31cSMarius Strobl.Cd hint.le.0.irq="6" 660ab9d31cSMarius Strobl.Pp 670ab9d31cSMarius StroblFor ISA non-PnP cards, the port address as well as the IRQ and the DRQ 680ab9d31cSMarius Stroblnumbers have to be specified in 690ab9d31cSMarius Strobl.Pa /boot/device.hints : 700ab9d31cSMarius Strobl.Cd hint.le.0.at="isa" 710ab9d31cSMarius Strobl.Cd hint.le.0.port="0x280" 720ab9d31cSMarius Strobl.Cd hint.le.0.irq="10" 730ab9d31cSMarius Strobl.Cd hint.le.0.drq="0" 7435591247SMarius Strobl.Sh DESCRIPTION 7535591247SMarius StroblThe 7635591247SMarius Strobl.Nm 7735591247SMarius Strobldriver provides support for Ethernet adapters based on the 7835591247SMarius Strobl.Tn AMD 7935591247SMarius StroblAm7990 and Am79C90 (CMOS, pin-compatible) 8035591247SMarius StroblLocal Area Network Controller for Ethernet 8135591247SMarius Strobl.Pq Tn LANCE 820ab9d31cSMarius Stroblchips. 8335591247SMarius Strobl.Pp 8435591247SMarius StroblThe 8535591247SMarius Strobl.Nm 860ab9d31cSMarius Strobldriver also supports Ethernet adapters based on the 8735591247SMarius Strobl.Tn AMD 79C9xx 8835591247SMarius Stroblfamily of chips, which are single-chip implementations of a 8935591247SMarius Strobl.Tn LANCE 90e9646f64SMarius Stroblchip and a DMA engine. 91e9646f64SMarius StroblThis includes a superset of the 9235591247SMarius Strobl.Tn PCI 930ab9d31cSMarius Stroblbus Ethernet chips supported by the 9435591247SMarius Strobl.Xr pcn 4 9535591247SMarius Strobldriver. 9635591247SMarius StroblThe 9735591247SMarius Strobl.Nm 98e9646f64SMarius Strobldriver treats all of these 99e9646f64SMarius Strobl.Tn PCI 1000ab9d31cSMarius Stroblbus Ethernet chips as an 101e9646f64SMarius Strobl.Tn AMD Am79C970 PCnet-PCI 102e9646f64SMarius Strobland does not support the additional features like the MII bus and burst mode of 103e9646f64SMarius Strobl.Tn AMD Am79C971 PCnet-FAST 1040ab9d31cSMarius Strobland greater chips. 105e9646f64SMarius StroblThus the 10635591247SMarius Strobl.Xr pcn 4 107e9646f64SMarius Strobldriver should be preferred for the latter. 10835591247SMarius Strobl.Pp 1090ab9d31cSMarius StroblGenerally, the 1100ab9d31cSMarius Strobl.Nm 1110ab9d31cSMarius Strobldriver aims at supporting as many different chips on as many different 1120ab9d31cSMarius Stroblplatforms as possible, 1130ab9d31cSMarius Stroblpartially at the cost of the best performance with some of these. 1140ab9d31cSMarius Strobl.Pp 11535591247SMarius StroblThe 11635591247SMarius Strobl.Nm 11735591247SMarius Strobldriver supports reception and transmission of extended frames for 11835591247SMarius Strobl.Xr vlan 4 . 11935591247SMarius StroblSelective reception of multicast Ethernet frames is provided by a 64-bit mask; 12035591247SMarius Stroblmulticast destination addresses are hashed to a bit entry using the Ethernet 12135591247SMarius StroblCRC function. 12235591247SMarius Strobl.Sh HARDWARE 1230ab9d31cSMarius Strobl.Ss C-Bus and ISA 1240ab9d31cSMarius StroblThe 1250ab9d31cSMarius Strobl.Nm 1260ab9d31cSMarius Strobldriver supports 1270ab9d31cSMarius Strobl.Tn C-Bus 1280ab9d31cSMarius Strobland 1290ab9d31cSMarius Strobl.Tn ISA 1300ab9d31cSMarius Stroblbus Ethernet adapters which are based on the following chips: 1310ab9d31cSMarius Strobl.Pp 1320ab9d31cSMarius Strobl.Bl -bullet -compact 1330ab9d31cSMarius Strobl.It 1340ab9d31cSMarius Strobl.Tn AMD Am7990 and Am79C90 LANCE 1350ab9d31cSMarius Strobl.It 1360ab9d31cSMarius Strobl.Tn AMD Am79C960 PCnet-ISA 1370ab9d31cSMarius Strobl.It 1380ab9d31cSMarius Strobl.Tn AMD Am79C961 PCnet-ISA+ 1390ab9d31cSMarius Strobl.It 1400ab9d31cSMarius Strobl.Tn AMD Am79C961A PCnet-ISA II 1410ab9d31cSMarius Strobl.El 1420ab9d31cSMarius Strobl.Pp 1430ab9d31cSMarius StroblThis includes support for the following Ethernet adapters: 1440ab9d31cSMarius Strobl.Pp 1450ab9d31cSMarius StroblC-Bus non-PnP: 1460ab9d31cSMarius Strobl.Pp 1470ab9d31cSMarius Strobl.Bl -bullet -compact 1480ab9d31cSMarius Strobl.It 1490ab9d31cSMarius Strobl.Tn Contec C-NET(98)S 1500ab9d31cSMarius Strobl.El 1510ab9d31cSMarius Strobl.Pp 1520ab9d31cSMarius StroblISA non-PnP: 1530ab9d31cSMarius Strobl.Pp 1540ab9d31cSMarius Strobl.Bl -bullet -compact 1550ab9d31cSMarius Strobl.It 1560ab9d31cSMarius Strobl.Tn BICC Isolan 15735591247SMarius Strobl.\" .It 15835591247SMarius Strobl.\" .Tn Digital DEPCA 1590ab9d31cSMarius Strobl.It 1600ab9d31cSMarius Strobl.Tn Novell NE2100 1610ab9d31cSMarius Strobl.El 1620ab9d31cSMarius Strobl.Pp 1630ab9d31cSMarius StroblISA PnP: 1640ab9d31cSMarius Strobl.Pp 1650ab9d31cSMarius Strobl.Bl -bullet -compact 1660ab9d31cSMarius Strobl.It 1670ab9d31cSMarius Strobl.Tn AMD AM1500T/AM2100 1680ab9d31cSMarius Strobl.It 1690ab9d31cSMarius Strobl.Tn AMD PCnet-32 1700ab9d31cSMarius Strobl.It 1710ab9d31cSMarius Strobl.Tn AMD PCnet-ISA 1720ab9d31cSMarius Strobl.It 173e71d18f4SMarius Strobl.Tn Allied Telesyn AT-1500 174e71d18f4SMarius Strobl.It 1750ab9d31cSMarius Strobl.Tn Boca LANCard Combo 1760ab9d31cSMarius Strobl.It 1770ab9d31cSMarius Strobl.Tn Cabletron E2100 Series DNI 1780ab9d31cSMarius Strobl.It 1790ab9d31cSMarius Strobl.Tn Cabletron E2200 Single Chip 1800ab9d31cSMarius Strobl.It 1810ab9d31cSMarius Strobl.Tn Melco Inc. LGY-IV 1820ab9d31cSMarius Strobl.It 1830ab9d31cSMarius Strobl.Tn Novell NE2100 1840ab9d31cSMarius Strobl.It 1850ab9d31cSMarius Strobl.Tn Racal InterLan EtherBlaster 1860ab9d31cSMarius Strobl.El 1870ab9d31cSMarius Strobl.Pp 1880ab9d31cSMarius StroblThe 1890ab9d31cSMarius Strobl.Nm 1900ab9d31cSMarius Strobldriver does not support the selection of media types and options via 1910ab9d31cSMarius Strobl.Xr ifconfig 8 1920ab9d31cSMarius Stroblwith 1930ab9d31cSMarius Strobl.Tn C-Bus 1940ab9d31cSMarius Strobland 1950ab9d31cSMarius Strobl.Tn ISA 1960ab9d31cSMarius Stroblbus Ethernet adapters. 19735591247SMarius Strobl.\" .Ss EISA 19835591247SMarius Strobl.\" The 19935591247SMarius Strobl.\" .Tn EISA 20035591247SMarius Strobl.\" bus Ethernet cards supported by the 20135591247SMarius Strobl.\" .Nm 20235591247SMarius Strobl.\" driver are: 20335591247SMarius Strobl.\" .Pp 20435591247SMarius Strobl.\" .Bl -bullet -compact 20535591247SMarius Strobl.\" .It 20635591247SMarius Strobl.\" .Tn DEC DE422 20735591247SMarius Strobl.\" .El 20835591247SMarius Strobl.\" .Ss MCA 20935591247SMarius Strobl.\" The 21035591247SMarius Strobl.\" .Tn MCA 21135591247SMarius Strobl.\" bus Ethernet cards supported by the 21235591247SMarius Strobl.\" .Nm 21335591247SMarius Strobl.\" driver are: 21435591247SMarius Strobl.\" .Pp 21535591247SMarius Strobl.\" .Bl -bullet -compact 21635591247SMarius Strobl.\" .It 21735591247SMarius Strobl.\" .Tn SKNET Personal MC2 21835591247SMarius Strobl.\" .It 21935591247SMarius Strobl.\" .Tn SKNET MC2+ 22035591247SMarius Strobl.\" .El 22135591247SMarius Strobl.Ss PCI 22235591247SMarius StroblThe 22335591247SMarius Strobl.Tn PCI 2240ab9d31cSMarius Stroblbus Ethernet chips supported by the 22535591247SMarius Strobl.Nm 22635591247SMarius Strobldriver are: 22735591247SMarius Strobl.Pp 22835591247SMarius Strobl.Bl -bullet -compact 22935591247SMarius Strobl.It 23035591247SMarius Strobl.Tn AMD Am53C974/Am79C970/Am79C974 PCnet-PCI 23135591247SMarius Strobl.It 23235591247SMarius Strobl.Tn AMD Am79C970A PCnet-PCI II 23335591247SMarius Strobl.It 23435591247SMarius Strobl.Tn AMD Am79C971 PCnet-FAST 23535591247SMarius Strobl.It 23635591247SMarius Strobl.Tn AMD Am79C972 PCnet-FAST+ 23735591247SMarius Strobl.It 23835591247SMarius Strobl.Tn AMD Am79C973/Am79C975 PCnet-FAST III 23935591247SMarius Strobl.It 24035591247SMarius Strobl.Tn AMD Am79C976 PCnet-PRO 24135591247SMarius Strobl.It 24235591247SMarius Strobl.Tn AMD Am79C978 PCnet-Home 24335591247SMarius Strobl.El 24435591247SMarius Strobl.Pp 24535591247SMarius StroblThe 24635591247SMarius Strobl.Nm 2470ab9d31cSMarius Strobldriver supports the following media types with these chips: 248ae91966bSRuslan Ermilov.Bl -tag -width ".Cm 10base5/AUI" 249ae91966bSRuslan Ermilov.It Cm autoselect 25035591247SMarius StroblEnable autoselection of the media type. 251ae91966bSRuslan Ermilov.It Cm 10baseT/UTP 25235591247SMarius StroblSelect UTP media. 253ae91966bSRuslan Ermilov.It Cm 10base5/AUI 25435591247SMarius StroblSelect AUI/BNC media. 25535591247SMarius Strobl.El 25635591247SMarius Strobl.Pp 25735591247SMarius StroblThe following media option is supported with these media types: 258ae91966bSRuslan Ermilov.Bl -tag -width ".Cm full-duplex" 259ae91966bSRuslan Ermilov.It Cm full-duplex 26035591247SMarius StroblSelect full duplex operation. 26135591247SMarius Strobl.El 26235591247SMarius Strobl.Pp 26335591247SMarius StroblNote that unlike the 26435591247SMarius Strobl.Xr pcn 4 26535591247SMarius Strobldriver, the 26635591247SMarius Strobl.Nm 26735591247SMarius Strobldriver does not support selecting 100Mbps (Fast Ethernet) media types. 26835591247SMarius Strobl.Ss sparc64 26935591247SMarius StroblThe 27035591247SMarius Strobl.Nm 27135591247SMarius Strobldriver supports the on-board 27235591247SMarius Strobl.Tn LANCE 27335591247SMarius Stroblinterfaces found in 27435591247SMarius Strobl.Tn Sun Ultra 1 27535591247SMarius Stroblmachines. 27635591247SMarius StroblThe following media types are available with these: 277ae91966bSRuslan Ermilov.Bl -tag -width ".Cm 10base5/AUI" 278ae91966bSRuslan Ermilov.It Cm autoselect 27935591247SMarius StroblEnable autoselection of the media type. 280ae91966bSRuslan Ermilov.It Cm 10baseT/UTP 28135591247SMarius StroblSelect UTP media. 282ae91966bSRuslan Ermilov.It Cm 10base5/AUI 28335591247SMarius StroblSelect AUI media. 28435591247SMarius Strobl.El 28535591247SMarius Strobl.Pp 28635591247SMarius StroblWhen using autoselection, a default media type is selected for use by 28735591247SMarius Stroblexamining all ports for carrier. 28835591247SMarius StroblThe first media type with which a carrier is detected will be selected. 28935591247SMarius StroblAdditionally, if carrier is dropped on a port, the driver will switch 29035591247SMarius Stroblbetween the possible ports until one with carrier is found. 29135591247SMarius Strobl.\" .Pp 29235591247SMarius Strobl.\" The 29335591247SMarius Strobl.\" .Nm 29435591247SMarius Strobl.\" driver also supports 29535591247SMarius Strobl.\" .Tn SBus 29635591247SMarius Strobl.\" Ethernet cards. 29735591247SMarius Strobl.\" These include: 29835591247SMarius Strobl.\" .Bl -bullet -compact 29935591247SMarius Strobl.\" .It 30035591247SMarius Strobl.\" SBE/S 30135591247SMarius Strobl.\" .Tn SCSI 30235591247SMarius Strobl.\" and Buffered Ethernet 30335591247SMarius Strobl.\" (Sun P/N 501-1860) 30435591247SMarius Strobl.\" .It 30535591247SMarius Strobl.\" FSBE/S 30635591247SMarius Strobl.\" Fast 30735591247SMarius Strobl.\" .Tn SCSI 30835591247SMarius Strobl.\" and Buffered Ethernet 30935591247SMarius Strobl.\" (Sun P/N 501-2015) 31035591247SMarius Strobl.\" .El 31135591247SMarius Strobl.Pp 31235591247SMarius StroblFor further information on configuring media types and options, see 31335591247SMarius Strobl.Xr ifconfig 8 . 31435591247SMarius Strobl.Sh DIAGNOSTICS 31535591247SMarius Strobl.Bl -diag 31635591247SMarius Strobl.It "le%d: overflow" 31735591247SMarius StroblMore packets came in from the Ethernet than there was space in the 31835591247SMarius Strobl.Tn LANCE 31935591247SMarius Stroblreceive buffers. 32035591247SMarius StroblPackets were missed. 32135591247SMarius Strobl.It "le%d: receive buffer error" 32235591247SMarius StroblThe 32335591247SMarius Strobl.Tn LANCE 32435591247SMarius Stroblran out of buffer space, packet dropped. 32535591247SMarius Strobl.It "le%d: lost carrier" 32635591247SMarius StroblThe Ethernet carrier disappeared during an attempt to transmit. 32735591247SMarius StroblThe 32835591247SMarius Strobl.Tn LANCE 32935591247SMarius Stroblwill finish transmitting the current packet, 33035591247SMarius Stroblbut will not automatically retry transmission if there is a collision. 33135591247SMarius Strobl.It "le%d: excessive collisions, tdr %d" 33235591247SMarius StroblThe Ethernet was extremely busy or jammed, 33335591247SMarius Strobloutbound packets were dropped after 16 attempts to retransmit. 33435591247SMarius Strobl.Pp 33535591247SMarius StroblTDR 33635591247SMarius Stroblis the abbreviation of 33735591247SMarius Strobl.Qq Time Domain Reflectometry . 33835591247SMarius StroblThe optionally reported TDR value is an internal counter of the interval 33935591247SMarius Stroblbetween the start of a transmission and the occurrence of a collision. 34035591247SMarius StroblThis value can be used to determine the distance from the Ethernet tap to 34135591247SMarius Stroblthe point on the Ethernet cable that is shorted or open (unterminated). 34235591247SMarius Strobl.It "le%d: dropping chained buffer" 34335591247SMarius StroblA packet did not fit into a single receive buffer and was dropped. 34435591247SMarius StroblSince the 34535591247SMarius Strobl.Nm 34635591247SMarius Strobldriver allocates buffers large enough to receive maximum sized Ethernet 34735591247SMarius Stroblpackets, this means some other station on the LAN transmitted a packet 34835591247SMarius Strobllarger than allowed by the Ethernet standard. 34935591247SMarius Strobl.It "le%d: transmit buffer error" 35035591247SMarius StroblThe 35135591247SMarius Strobl.Tn LANCE 35235591247SMarius Stroblran out of buffer space before finishing the transmission of a packet. 35335591247SMarius StroblIf this error occurs, the driver software has a bug. 35435591247SMarius Strobl.It "le%d: underflow" 35535591247SMarius StroblThe 35635591247SMarius Strobl.Tn LANCE 35735591247SMarius Stroblran out of buffer space before finishing the transmission of a packet. 35835591247SMarius StroblIf this error occurs, the driver software has a bug. 35935591247SMarius Strobl.It "le%d: controller failed to initialize" 36035591247SMarius StroblDriver failed to start the 36135591247SMarius Strobl.Tn LANCE . 36235591247SMarius StroblThis is potentially a hardware failure. 36335591247SMarius Strobl.It "le%d: memory error" 36435591247SMarius StroblRAM failed to respond within the timeout when the 36535591247SMarius Strobl.Tn LANCE 36635591247SMarius Stroblwanted to read or write it. 36735591247SMarius StroblThis is potentially a hardware failure. 36835591247SMarius Strobl.It "le%d: receiver disabled" 36935591247SMarius StroblThe receiver of the 37035591247SMarius Strobl.Tn LANCE 37135591247SMarius Stroblwas turned off due to an error. 37235591247SMarius Strobl.It "le%d: transmitter disabled" 37335591247SMarius StroblThe transmitter of the 37435591247SMarius Strobl.Tn LANCE 37535591247SMarius Stroblwas turned off due to an error. 37635591247SMarius Strobl.El 37735591247SMarius Strobl.Sh SEE ALSO 37835591247SMarius Strobl.Xr arp 4 , 37935591247SMarius Strobl.Xr intro 4 , 38035591247SMarius Strobl.Xr netintro 4 , 38135591247SMarius Strobl.Xr pcn 4 , 38235591247SMarius Strobl.Xr vlan 4 , 38335591247SMarius Strobl.Xr ifconfig 8 38435591247SMarius Strobl.Sh HISTORY 38535591247SMarius StroblThe 38635591247SMarius Strobl.Nm 38735591247SMarius Strobldriver was ported from 38835591247SMarius Strobl.Nx 38935591247SMarius Strobland first appeared in 39035591247SMarius Strobl.Fx 6.1 . 39135591247SMarius StroblThe 39235591247SMarius Strobl.Nx 39335591247SMarius Stroblversion in turn was derived from the 39435591247SMarius Strobl.Nm 39535591247SMarius Strobldriver which first appeared in 39635591247SMarius Strobl.Bx 4.4 . 39735591247SMarius Strobl.Sh AUTHORS 39835591247SMarius StroblThe 39935591247SMarius Strobl.Nm 40035591247SMarius Strobldriver was ported by 40135591247SMarius Strobl.An "Marius Strobl" Aq marius@FreeBSD.org . 40235591247SMarius Strobl.\" .Sh BUGS 40335591247SMarius Strobl.\" The Am7990 Revision C chips have a bug which causes garbage to be inserted 40435591247SMarius Strobl.\" in front of the received packet occasionally. 40535591247SMarius Strobl.\" The work-around is to ignore packets with an invalid destination address 40635591247SMarius Strobl.\" (garbage will usually not match), by double-checking the destination 40735591247SMarius Strobl.\" address of every packet in the driver. 40835591247SMarius Strobl.\" This work-around can be enabled with the 40935591247SMarius Strobl.\" .Dv LANCE_REVC_BUG 41035591247SMarius Strobl.\" kernel option. 41135591247SMarius Strobl.\" .Pp 41235591247SMarius Strobl.\" When 41335591247SMarius Strobl.\" .Dv LANCE_REVC_BUG 41435591247SMarius Strobl.\" is enabled, the 41535591247SMarius Strobl.\" .Nm 41635591247SMarius Strobl.\" driver executes one or two calls to an inline Ethernet address comparison 41735591247SMarius Strobl.\" function for every received packet. 41835591247SMarius Strobl.\" On the 41935591247SMarius Strobl.\" .Tn MC68000 42035591247SMarius Strobl.\" it is exactly eight instructions of 16 bits each. 42135591247SMarius Strobl.\" There is one comparison for each unicast packet, and two comparisons for 42235591247SMarius Strobl.\" each broadcast packet. 42335591247SMarius Strobl.\" .Pp 42435591247SMarius Strobl.\" In summary, the cost of the LANCE_REVC_BUG option is: 42535591247SMarius Strobl.\" .Bl -enum -compact 42635591247SMarius Strobl.\" .It 42735591247SMarius Strobl.\" loss of multicast support, and 42835591247SMarius Strobl.\" .It 42935591247SMarius Strobl.\" eight extra 43035591247SMarius Strobl.\" .Tn CPU 43135591247SMarius Strobl.\" instructions per received packet, sometimes sixteen, depending on both the 43235591247SMarius Strobl.\" processor, and the type of packet. 43335591247SMarius Strobl.\" .El 43435591247SMarius Strobl.\" .Pp 43535591247SMarius Strobl.\" All sun3 systems are presumed to have this bad revision of the Am7990, 43635591247SMarius Strobl.\" until proven otherwise. 43735591247SMarius Strobl.\" Alas, the only way to prove what revision of the chip is in a particular 43835591247SMarius Strobl.\" system is inspection of the date code on the chip package, 43935591247SMarius Strobl.\" to compare against a list of what chip revisions were fabricated between 44035591247SMarius Strobl.\" which dates. 44135591247SMarius Strobl.\" .Pp 44235591247SMarius Strobl.\" Alas, the Am7990 chip is so old that 44335591247SMarius Strobl.\" .Tn AMD 44435591247SMarius Strobl.\" has 44535591247SMarius Strobl.\" .Qq de-archived 44635591247SMarius Strobl.\" the production information about it; pending a search elsewhere, we do not 44735591247SMarius Strobl.\" know how to identify the revision C chip from the date codes. 448