xref: /freebsd/share/man/man4/stge.4 (revision 9336e0699bda8a301cd2bfa37106b6ec5e32012e)
1.\"	$NetBSD: stge.4,v 1.7 2003/02/14 15:20:20 grant Exp $
2.\"
3.\" Copyright (c) 2001 The NetBSD Foundation, Inc.
4.\" All rights reserved.
5.\"
6.\" This code is derived from software contributed to The NetBSD Foundation
7.\" by Jason R. Thorpe.
8.\"
9.\" Redistribution and use in source and binary forms, with or without
10.\" modification, are permitted provided that the following conditions
11.\" are met:
12.\" 1. Redistributions of source code must retain the above copyright
13.\"    notice, this list of conditions and the following disclaimer.
14.\" 2. Redistributions in binary form must reproduce the above copyright
15.\"    notice, this list of conditions and the following disclaimer in the
16.\"    documentation and/or other materials provided with the distribution.
17.\" 3. All advertising materials mentioning features or use of this software
18.\"    must display the following acknowledgement:
19.\"        This product includes software developed by the NetBSD
20.\"        Foundation, Inc. and its contributors.
21.\" 4. Neither the name of The NetBSD Foundation nor the names of its
22.\"    contributors may be used to endorse or promote products derived
23.\"    from this software without specific prior written permission.
24.\"
25.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
26.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
27.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
28.\" PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
29.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
30.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
31.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
32.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
33.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
34.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
35.\" POSSIBILITY OF SUCH DAMAGE.
36.\"
37.\" $FreeBSD$
38.\"
39.Dd July 25, 2006
40.Dt STGE 4
41.Os
42.Sh NAME
43.Nm stge
44.Nd Sundance/Tamarack TC9021 Gigabit Ethernet adapter driver
45.Sh SYNOPSIS
46To compile this driver into the kernel,
47place the following lines in your
48kernel configuration file:
49.Bd -ragged -offset indent
50.Cd "device miibus"
51.Cd "device stge"
52.Ed
53.Pp
54Alternatively, to load the driver as a
55module at boot time, place the following line in
56.Xr loader.conf 5 :
57.Bd -literal -offset indent
58if_stge_load="YES"
59.Ed
60.Sh DESCRIPTION
61The
62.Nm
63device driver provides support for various NICs based on the
64Sundance/Tamarack TC9021 Gigabit Ethernet controller chip.
65.Pp
66The Sundance/Tamarack TC9021 is found on the D-Link DGE-550T
67and the Antares Microsystems Gigabit Ethernet board.
68It uses an external PHY or an external 10-bit interface.
69.Pp
70All NICs supported by the
71.Nm
72driver have TCP/UDP/IP checksum offload for both receive and
73transmit, hardware VLAN tag stripping/insertion features, and
74receive interrupt moderation mechanism as well as a 64-bit
75multicast hash filter.
76The Sundance/Tamarack TC9021 supports TBI (ten bit interface)
77and GMII transceivers, which means it can be used with either
78copper or 1000baseX fiber applications.
79.Pp
80The Sundance/Tamarack TC9021 also supports jumbo frames, which can be
81configured via the interface MTU setting.
82Selecting an MTU larger than 1500 bytes with the
83.Xr ifconfig 8
84utility configures the adapter to receive and transmit jumbo frames.
85.Pp
86The
87.Nm
88driver supports the following media types:
89.Bl -tag -width ".Cm 10baseT/UTP"
90.It Cm autoselect
91Enable autoselection of the media type and options.
92The user can manually override
93the autoselected mode by adding media options to
94.Xr rc.conf 5 .
95.It Cm 10baseT/UTP
96Set 10Mbps operation.
97The
98.Xr ifconfig 8
99.Cm mediaopt
100option can also be used to select either
101.Cm full-duplex
102or
103.Cm half-duplex
104modes.
105.It Cm 100baseTX
106Set 100Mbps (Fast Ethernet) operation.
107The
108.Xr ifconfig 8
109.Cm mediaopt
110option can also be used to select either
111.Cm full-duplex
112or
113.Cm half-duplex
114modes.
115.It Cm 1000baseTX
116Set 1000baseTX operation over twisted pair.
117The Sundance/Tamarack supports 1000Mbps in
118.Cm autoselect
119mode only.
120.\" .It Cm 1000baseSX
121.\" Set 1000Mbps (Gigabit Ethernet) operation.
122.\" Both
123.\" .Cm full-duplex
124.\" and
125.\" .Cm half-duplex
126.\" modes are supported.
127.El
128.Pp
129The
130.Nm
131driver supports the following media options:
132.Bl -tag -width ".Cm full-duplex"
133.It Cm full-duplex
134Force full duplex operation.
135.It Cm half-duplex
136Force half duplex operation.
137.El
138.Pp
139The
140.Nm
141driver also supports one special link option for 1000baseTX cards:
142.Bl -tag -width ".Cm link0"
143.It Cm link0
144With 1000baseTX cards, establishing a link between two ports requires
145that one port is configured as master and the other one as slave.
146With autonegotiation,
147the master/slave settings will be chosen automatically.
148However when manually selecting the link state, it is necessary to
149force one side of the link to be a master and the other a slave.
150The
151.Nm
152driver configures the ports as slaves by default.
153Setting the
154.Cm link0
155flag with
156.Xr ifconfig 8
157will set a port as a master instead.
158.El
159.Pp
160For more information on configuring this device, see
161.Xr ifconfig 8 .
162.Sh HARDWARE
163The
164.Nm
165driver provides support for various NICs based on the Sundance/Tamarack
166TC9021 based Gigabit Ethernet controller chips, including:
167.Pp
168.Bl -bullet -compact
169.It
170Antares Microsystems Gigabit Ethernet
171.It
172ASUS NX1101 Gigabit Ethernet
173.It
174D-Link DL-4000 Gigabit Ethernet
175.It
176IC Plus IP1000A Gigabit Ethernet
177.It
178Sundance ST-2021 Gigabit Ethernet
179.It
180Sundance ST-2023 Gigabit Ethernet
181.It
182Sundance TC9021 Gigabit Ethernet
183.It
184Tamarack TC9021 Gigabit Ethernet
185.El
186.Sh SYSCTL VARIABLES
187The following variables are available as both
188.Xr sysctl 8
189variables and
190.Xr loader 8
191tunables:
192.Bl -tag -width indent
193.It Va dev.stge.%d.rxint_nframe
194Number of frames between RxDMAComplete interrupts.
195The accepted range is 1 to 255, default value is 8 frames.
196The interface has to be brought down and up again before a change takes effect.
197.It Va dev.stge.%d.rxint_dmawait
198Maximum amount of time to wait in 1us increments before issuing
199an Rx interrupt if the number of frames received is less than
200.Va rxint_nframe .
201The accepted range is 0 to 4194, default value is 30 microseconds.
202The interface has to be brought down and up again before a change takes effect.
203.El
204.Sh SEE ALSO
205.Xr altq 4 ,
206.Xr arp 4 ,
207.Xr miibus 4 ,
208.Xr netintro 4 ,
209.Xr ng_ether 4 ,
210.Xr polling 4 ,
211.Xr vlan 4 ,
212.Xr ifconfig 8
213.Sh HISTORY
214The
215.Nm
216driver was ported from
217.Nx
218and first appeared in
219.Fx 6.2 .
220The
221.Nx
222version was written by
223.An Jason R. Thorpe
224.Aq thorpej@NetBSD.org .
225.Sh AUTHORS
226The
227.Nm
228driver was ported by
229.An Pyun YongHyeon
230.Aq yongari@FreeBSD.org .
231