xref: /freebsd/share/man/man4/nge.4 (revision faf25f48d601ae39f5752602f3020e2e92605625)
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.Re
213.Rs
214.%T National Semiconductor DP83861 datasheet
215.Re
216.Sh HISTORY
217The
218.Nm
219device driver first appeared in
220.Fx 4.4 .
221.Sh AUTHORS
222The
223.Nm
224driver was written by
225.An Bill Paul Aq Mt wpaul@bsdi.com .
226