1.\" Copyright (c) 2001 Wind River Systems 2.\" Copyright (c) 1997, 1998, 1999, 2000, 2001 3.\" Bill Paul <wpaul@bsdi.com>. All rights reserved. 4.\" 5.\" Redistribution and use in source and binary forms, with or without 6.\" modification, are permitted provided that the following conditions 7.\" are met: 8.\" 1. Redistributions of source code must retain the above copyright 9.\" notice, this list of conditions and the following disclaimer. 10.\" 2. Redistributions in binary form must reproduce the above copyright 11.\" notice, this list of conditions and the following disclaimer in the 12.\" documentation and/or other materials provided with the distribution. 13.\" 3. All advertising materials mentioning features or use of this software 14.\" must display the following acknowledgement: 15.\" This product includes software developed by Bill Paul. 16.\" 4. Neither the name of the author nor the names of any co-contributors 17.\" may be used to endorse or promote products derived from this software 18.\" without specific prior written permission. 19.\" 20.\" THIS SOFTWARE IS PROVIDED BY Bill Paul AND CONTRIBUTORS ``AS IS'' AND 21.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 22.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 23.\" ARE DISCLAIMED. IN NO EVENT SHALL Bill Paul OR THE VOICES IN HIS HEAD 24.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 25.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 26.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS 27.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 28.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 29.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF 30.\" THE POSSIBILITY OF SUCH DAMAGE. 31.\" 32.\" $FreeBSD$ 33.\" 34.Dd November 23, 2010 35.Dt NGE 4 36.Os 37.Sh NAME 38.Nm nge 39.Nd "National Semiconductor PCI Gigabit Ethernet adapter driver" 40.Sh SYNOPSIS 41To compile this driver into the kernel, 42place the following lines in your 43kernel configuration file: 44.Bd -ragged -offset indent 45.Cd "device miibus" 46.Cd "device nge" 47.Ed 48.Pp 49Alternatively, to load the driver as a 50module at boot time, place the following line in 51.Xr loader.conf 5 : 52.Bd -literal -offset indent 53if_nge_load="YES" 54.Ed 55.Sh DESCRIPTION 56The 57.Nm 58driver provides support for various NICs based on the National Semiconductor 59DP83820 and DP83821 Gigabit Ethernet controller chips. 60.Pp 61The DP83820 supports TBI (ten bit interface) and GMII 62transceivers, which means it can be used with either copper or 1000baseX 63fiber applications. 64The DP83820 supports TCP/IP checksum offload and 65VLAN tagging/insertion as well as a 2048-bit multicast hash filter 66and up to 4 pattern match buffers. 67.Pp 68Most cards also use the DP83861 10/100/1000 copper gigabit transceiver 69chip, which supports autonegotiation of 10, 100 and 1000Mbps modes in 70full or half duplex. 71.Pp 72The DP83820 and DP83821 also support jumbo frames, which can be 73configured via the interface MTU setting. 74Selecting an MTU larger than 1500 bytes with the 75.Xr ifconfig 8 76utility configures the adapter to receive and transmit jumbo frames. 77Using jumbo frames can greatly improve performance for certain tasks, 78such as file transfers and data streaming. 79.Pp 80The 81.Nm 82driver supports the following media types: 83.Bl -tag -width 10baseTXUTP 84.It Cm autoselect 85Enable autoselection of the media type and options. 86The user can manually override 87the autoselected mode by adding media options to 88.Xr rc.conf 5 . 89.It Cm 10baseT/UTP 90Set 10Mbps operation. 91The 92.Xr ifconfig 8 93.Ic mediaopt 94option can also be used to select either 95.Cm full-duplex 96or 97.Cm half-duplex 98modes. 99.It Cm 100baseTX 100Set 100Mbps (Fast Ethernet) operation. 101The 102.Xr ifconfig 8 103.Ic mediaopt 104option can also be used to select either 105.Cm full-duplex 106or 107.Cm half-duplex 108modes. 109.It Cm 1000baseTX 110Set 1000baseTX operation over twisted pair. 111.Cm full-duplex 112and 113.Cm half-duplex 114modes are supported. 115.It Cm 1000baseSX 116Set 1000Mbps (Gigabit Ethernet) operation. 117Both 118.Cm full-duplex 119and 120.Cm half-duplex 121modes are supported. 122.El 123.Pp 124The 125.Nm 126driver supports the following media options: 127.Bl -tag -width full-duplex 128.It Cm full-duplex 129Force full duplex operation. 130.It Cm half-duplex 131Force half duplex operation. 132.El 133.Pp 134For more information on configuring this device, see 135.Xr ifconfig 8 . 136.Sh HARDWARE 137The 138.Nm 139driver supports National Semiconductor DP83820 and DP83821 based 140Gigabit Ethernet adapters including: 141.Pp 142.Bl -bullet -compact 143.It 144Addtron AEG320T 145.It 146Ark PC SOHO-GA2500T (32-bit PCI) and SOHO-GA2000T (64-bit PCI) 147.It 148Asante FriendlyNet GigaNIX 1000TA and 1000TPC 149.It 150D-Link DGE-500T 151.It 152Linksys EG1032, revision 1 153.It 154Netgear GA621 155.It 156Netgear GA622T 157.It 158SMC EZ Card 1000 (SMC9462TX) 159.It 160Surecom Technology EP-320G-TX 161.It 162Trendware TEG-PCITX (32-bit PCI) and TEG-PCITX2 (64-bit PCI) 163.El 164.Sh SYSCTL VARIABLES 165The following variables are available as both 166.Xr sysctl 8 167variables and 168.Xr loader 8 169tunables: 170.Bl -tag -width "xxxxxx" 171.It Va dev.nge.%d.int_holdoff 172Maximum amount of time to delay interrupt processing in units of 173100us. 174The accepted range is 0 to 255, the default is 1(100us). 175Value 0 completely disables the interrupt moderation. 176The interface has to be brought down and up again before a change 177takes effect. 178.El 179.Sh DIAGNOSTICS 180.Bl -diag 181.It "nge%d: couldn't map memory" 182A fatal initialization error has occurred. 183.It "nge%d: couldn't map ports" 184A fatal initialization error has occurred. 185.It "nge%d: couldn't map interrupt" 186A fatal initialization error has occurred. 187.It "nge%d: no memory for softc struct!" 188The driver failed to allocate memory for per-device instance information 189during initialization. 190.It "nge%d: failed to enable memory mapping!" 191The driver failed to initialize PCI shared memory mapping. 192This might 193happen if the card is not in a bus-master slot. 194.It "nge%d: no memory for jumbo buffers!" 195The driver failed to allocate memory for jumbo frames during 196initialization. 197.It "nge%d: watchdog timeout" 198The device has stopped responding to the network, or there is a problem with 199the network connection (cable). 200.El 201.Sh SEE ALSO 202.Xr altq 4 , 203.Xr arp 4 , 204.Xr miibus 4 , 205.Xr netintro 4 , 206.Xr ng_ether 4 , 207.Xr polling 4 , 208.Xr vlan 4 , 209.Xr ifconfig 8 210.Rs 211.%T National Semiconductor DP83820 datasheet 212.%U http://www.national.com 213.Re 214.Rs 215.%T National Semiconductor DP83861 datasheet 216.%U http://www.national.com 217.Re 218.Sh HISTORY 219The 220.Nm 221device driver first appeared in 222.Fx 4.4 . 223.Sh AUTHORS 224The 225.Nm 226driver was written by 227.An Bill Paul Aq Mt wpaul@bsdi.com . 228