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.Dd November 23, 2010 33.Dt NGE 4 34.Os 35.Sh NAME 36.Nm nge 37.Nd "National Semiconductor PCI Gigabit Ethernet adapter driver" 38.Sh SYNOPSIS 39To compile this driver into the kernel, 40place the following lines in your 41kernel configuration file: 42.Bd -ragged -offset indent 43.Cd "device miibus" 44.Cd "device nge" 45.Ed 46.Pp 47Alternatively, to load the driver as a 48module at boot time, place the following line in 49.Xr loader.conf 5 : 50.Bd -literal -offset indent 51if_nge_load="YES" 52.Ed 53.Sh DESCRIPTION 54The 55.Nm 56driver provides support for various NICs based on the National Semiconductor 57DP83820 and DP83821 Gigabit Ethernet controller chips. 58.Pp 59The DP83820 supports TBI (ten bit interface) and GMII 60transceivers, which means it can be used with either copper or 1000baseX 61fiber applications. 62The DP83820 supports TCP/IP checksum offload and 63VLAN tagging/insertion as well as a 2048-bit multicast hash filter 64and up to 4 pattern match buffers. 65.Pp 66Most cards also use the DP83861 10/100/1000 copper gigabit transceiver 67chip, which supports autonegotiation of 10, 100 and 1000Mbps modes in 68full or half duplex. 69.Pp 70The DP83820 and DP83821 also support jumbo frames, which can be 71configured via the interface MTU setting. 72Selecting an MTU larger than 1500 bytes with the 73.Xr ifconfig 8 74utility configures the adapter to receive and transmit jumbo frames. 75Using jumbo frames can greatly improve performance for certain tasks, 76such as file transfers and data streaming. 77.Pp 78The 79.Nm 80driver supports the following media types: 81.Bl -tag -width 10baseTXUTP 82.It Cm autoselect 83Enable autoselection of the media type and options. 84The user can manually override 85the autoselected mode by adding media options to 86.Xr rc.conf 5 . 87.It Cm 10baseT/UTP 88Set 10Mbps operation. 89The 90.Xr ifconfig 8 91.Ic mediaopt 92option can also be used to select either 93.Cm full-duplex 94or 95.Cm half-duplex 96modes. 97.It Cm 100baseTX 98Set 100Mbps (Fast Ethernet) operation. 99The 100.Xr ifconfig 8 101.Ic mediaopt 102option can also be used to select either 103.Cm full-duplex 104or 105.Cm half-duplex 106modes. 107.It Cm 1000baseTX 108Set 1000baseTX operation over twisted pair. 109.Cm full-duplex 110and 111.Cm half-duplex 112modes are supported. 113.It Cm 1000baseSX 114Set 1000Mbps (Gigabit Ethernet) operation. 115Both 116.Cm full-duplex 117and 118.Cm half-duplex 119modes are supported. 120.El 121.Pp 122The 123.Nm 124driver supports the following media options: 125.Bl -tag -width full-duplex 126.It Cm full-duplex 127Force full duplex operation. 128.It Cm half-duplex 129Force half duplex operation. 130.El 131.Pp 132For more information on configuring this device, see 133.Xr ifconfig 8 . 134.Sh HARDWARE 135The 136.Nm 137driver supports National Semiconductor DP83820 and DP83821 based 138Gigabit Ethernet adapters including: 139.Pp 140.Bl -bullet -compact 141.It 142Addtron AEG320T 143.It 144Ark PC SOHO-GA2500T (32-bit PCI) and SOHO-GA2000T (64-bit PCI) 145.It 146Asante FriendlyNet GigaNIX 1000TA and 1000TPC 147.It 148D-Link DGE-500T 149.It 150Linksys EG1032, revision 1 151.It 152Netgear GA621 153.It 154Netgear GA622T 155.It 156SMC EZ Card 1000 (SMC9462TX) 157.It 158Surecom Technology EP-320G-TX 159.It 160Trendware TEG-PCITX (32-bit PCI) and TEG-PCITX2 (64-bit PCI) 161.El 162.Sh SYSCTL VARIABLES 163The following variables are available as both 164.Xr sysctl 8 165variables and 166.Xr loader 8 167tunables: 168.Bl -tag -width "xxxxxx" 169.It Va dev.nge.%d.int_holdoff 170Maximum amount of time to delay interrupt processing in units of 171100us. 172The accepted range is 0 to 255, the default is 1(100us). 173Value 0 completely disables the interrupt moderation. 174The interface has to be brought down and up again before a change 175takes effect. 176.El 177.Sh DIAGNOSTICS 178.Bl -diag 179.It "nge%d: couldn't map memory" 180A fatal initialization error has occurred. 181.It "nge%d: couldn't map ports" 182A fatal initialization error has occurred. 183.It "nge%d: couldn't map interrupt" 184A fatal initialization error has occurred. 185.It "nge%d: no memory for softc struct!" 186The driver failed to allocate memory for per-device instance information 187during initialization. 188.It "nge%d: failed to enable memory mapping!" 189The driver failed to initialize PCI shared memory mapping. 190This might 191happen if the card is not in a bus-master slot. 192.It "nge%d: no memory for jumbo buffers!" 193The driver failed to allocate memory for jumbo frames during 194initialization. 195.It "nge%d: watchdog timeout" 196The device has stopped responding to the network, or there is a problem with 197the network connection (cable). 198.El 199.Sh SEE ALSO 200.Xr altq 4 , 201.Xr arp 4 , 202.Xr miibus 4 , 203.Xr netintro 4 , 204.Xr ng_ether 4 , 205.Xr polling 4 , 206.Xr vlan 4 , 207.Xr ifconfig 8 208.Rs 209.%T National Semiconductor DP83820 datasheet 210.Re 211.Rs 212.%T National Semiconductor DP83861 datasheet 213.Re 214.Sh HISTORY 215The 216.Nm 217device driver first appeared in 218.Fx 4.4 . 219.Sh AUTHORS 220The 221.Nm 222driver was written by 223.An Bill Paul Aq Mt wpaul@bsdi.com . 224