1.\" $OpenBSD: nge.4,v 1.5 2001/07/27 03:23:21 nate Exp $ 2.\" Copyright (c) 2001 Wind River Systems 3.\" Copyright (c) 1997, 1998, 1999, 2000, 2001 4.\" Bill Paul <wpaul@bsdi.com>. All rights reserved. 5.\" 6.\" Redistribution and use in source and binary forms, with or without 7.\" modification, are permitted provided that the following conditions 8.\" are met: 9.\" 1. Redistributions of source code must retain the above copyright 10.\" notice, this list of conditions and the following disclaimer. 11.\" 2. Redistributions in binary form must reproduce the above copyright 12.\" notice, this list of conditions and the following disclaimer in the 13.\" documentation and/or other materials provided with the distribution. 14.\" 3. All advertising materials mentioning features or use of this software 15.\" must display the following acknowledgement: 16.\" This product includes software developed by Bill Paul. 17.\" 4. Neither the name of the author nor the names of any co-contributors 18.\" may be used to endorse or promote products derived from this software 19.\" without specific prior written permission. 20.\" 21.\" THIS SOFTWARE IS PROVIDED BY Bill Paul AND CONTRIBUTORS ``AS IS'' AND 22.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 23.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 24.\" ARE DISCLAIMED. IN NO EVENT SHALL Bill Paul OR THE VOICES IN HIS HEAD 25.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 26.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 27.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS 28.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 29.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 30.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF 31.\" THE POSSIBILITY OF SUCH DAMAGE. 32.\" 33.\" $FreeBSD: src/share/man/man4/nge.4,v 1.5 2001/07/11 22:09:31 wpaul Exp $ 34.\" 35.Dd May 11, 2001 36.Dt NGE 4 37.Os 38.Sh NAME 39.Nm nge 40.Nd "National Semiconductor PCI gigabit ethernet adapter driver" 41.Sh SYNOPSIS 42.Cd "device miibus" 43.Cd "device nge" 44.Sh DESCRIPTION 45The 46.Nm 47driver provides support for various NICs based on the National Semiconductor 48DP83820 and DP83821 gigabit ethernet controller chips, including the 49following: 50.Pp 51.Bl -bullet -compact 52.It 53Addtron AEG320T 54.It 55Asante FriendlyNet GigaNIX 1000TA and 1000TPC 56.It 57D-Link DGE-500T 58.It 59LinkSys EG1032 (32-bit PCI) and EG1064 (64-bit PCI) 60.It 61Netgear GA622T 62.It 63SMC EZ Card 1000 (SMC9462TX) 64.It 65Surecom Technology EP-320G-TX 66.El 67.Pp 68All of these NICs are capable of 10, 100 and 1000mbps speeds over CAT5 69copper cable. 70The DP83820 supports TBI (ten bit interface) and GMII 71transceivers, which means it can be used with either copper or 1000baseX 72fiber applications. 73The DP83820 supports 74.Xr ip 4 , 75.Xr tcp 4 , 76and 77.Xr udp 4 78checksum offload and VLAN tagging/insertion as well as a 2048-bit 79multicast hash filter and up to 4 pattern match buffers. 80.Pp 81Most cards also use the DP83861 10/100/1000 copper gigabit tranceiver 82chip, which supports autonegotiation of 10, 100 and 1000mbps modes in 83full or half duplex. 84.Pp 85The DP83820 also supports jumbo frames, which can be configured 86via the interface MTU setting. 87Selecting an MTU larger than 1500 bytes with the 88.Xr ifconfig 8 89utility configures the adapter to receive and transmit jumbo frames. 90Using jumbo frames can greatly improve performance for certain tasks, 91such as file transfers and data streaming. 92If the MTU is set to be larger than the NIC's transmit buffer 93(typically 8152 bytes), hardware output checksumming is disabled 94as the NIC cannot handle this case. 95.Pp 96The 97.Nm 98driver supports the following media types: 99.Bl -tag -width 10baseTXUTP 100.It Cm autoselect 101Enable autoselection of the media type and options. 102The user can manually override 103the autoselected mode by adding media options to 104.Xr rc.conf 5 . 105.It Cm 10baseT/UTP 106Set 10Mbps operation. 107The 108.Xr ifconfig 8 109.Ic mediaopt 110option can also be used to select either 111.Cm full-duplex 112or 113.Cm half-duplex 114modes. 115.It Cm 100baseTX 116Set 100Mbps (fast ethernet) operation. 117The 118.Xr ifconfig 8 119.Ic mediaopt 120option can also be used to select either 121.Cm full-duplex 122or 123.Cm half-duplex 124modes. 125.It Cm 1000baseTX 126Set 1000baseTX operation over twisted pair. 127.Cm full-duplex 128and 129.Cm half-duplex 130modes are supported. 131.It Cm 1000baseSX 132Set 1000Mbps (gigabit ethernet) operation. 133Both 134.Cm full-duplex 135and 136.Cm half-duplex 137modes are supported. 138.El 139.Pp 140The 141.Nm 142driver supports the following media options: 143.Bl -tag -width full-duplex 144.It Cm full-duplex 145Force full duplex operation. 146.It Cm half-duplex 147Force half duplex operation. 148.El 149.Pp 150The 151.Nm 152driver also supports one special link option for 1000baseTX cards: 153.Bl -tag -width link0 154.It Cm link0 155With 1000baseTX cards, establishing a link between two ports requires 156that one port be configured as a master and the other a slave. 157With autonegotiation, 158the master/slave settings will be chosen automatically. 159However when manually selecting the link state, it is necessary to 160force one side of the link to be a master and the other a slave. 161The 162.Nm 163driver configures the ports as slaves by default. 164Setting the 165.Cm link0 166flag with 167.Xr ifconfig 8 168will set a port as a master instead. 169.El 170.Pp 171For more information on configuring this device, see 172.Xr ifconfig 8 . 173.Sh DIAGNOSTICS 174.Bl -diag 175.It "nge%d: couldn't map memory" 176A fatal initialization error has occurred. 177.It "nge%d: couldn't map ports" 178A fatal initialization error has occurred. 179.It "nge%d: couldn't map interrupt" 180A fatal initialization error has occurred. 181.It "nge%d: no memory for softc struct!" 182The driver failed to allocate memory for per-device instance information 183during initialization. 184.It "nge%d: failed to enable memory mapping!" 185The driver failed to initialize PCI shared memory mapping. 186This might 187happen if the card is not in a bus-master slot. 188.It "nge%d: no memory for jumbo buffers!" 189The driver failed to allocate memory for jumbo frames during 190initialization. 191.It "nge%d: watchdog timeout" 192The device has stopped responding to the network, or there is a problem with 193the network connection (cable). 194.El 195.Sh SEE ALSO 196.Xr arp 4 , 197.Xr netintro 4 , 198.Xr ifconfig 8 199.Rs 200.%T National Semiconductor DP83820 datasheet 201.%O http://www.national.com 202.Re 203.Rs 204.%T National Semiconductor DP83861 datasheet 205.%O http://www.national.com 206.Re 207.Sh HISTORY 208The 209.Nm 210device driver first appeared in 211.Ox 3.0 . 212.Sh AUTHORS 213The 214.Nm 215driver was written by 216.An Bill Paul Aq wpaul@bsdi.com . 217