xref: /freebsd/share/man/man4/stge.4 (revision e4e9813eb92cd7c4d4b819a8fbed5cbd3d92f5d8)
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 support 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.Pp
143.Bl -tag -width ".Cm link0"
144.It Cm link0
145With 1000baseTX cards, establishing a link between two ports requires
146that one port is configured as master and the other one as slave.
147With autonegotiation,
148the master/slave settings will be chosen automatically.
149However when manually selecting the link state, it is necessary to
150force one side of the link to be a master and the other a slave.
151The
152.Nm
153driver configures the ports as slaves by default.
154Setting the
155.Ar link0
156flag with
157.Xr ifconfig 8
158will set a port as a master instead.
159.El
160.Pp
161For more information on configuring this device, see
162.Xr ifconfig 8 .
163.Sh HARDWARE
164The
165.Nm
166driver provides support for various NICs based on the Sundance/Tamarack
167TC9021 based Gigabit Ethernet controller chips, including:
168.Pp
169.Bl -bullet -compact
170.It
171Antares Microsystems Gigabit Ethernet
172.It
173ASUS NX1101 Gigabit Ethernet
174.It
175D-Link DL-4000 Gigabit Ethernet
176.It
177IC Plus IP1000A Gigabit Ethernet
178.It
179Sundance ST-2021 Gigabit Ethernet
180.It
181Sundance ST-2023 Gigabit Ethernet
182.It
183Sundance TC9021 Gigabit Ethernet
184.It
185Tamarack TC9021 Gigabit Ethernet
186.El
187.Sh SYSCTL VARIABLES
188The following variables are available as both
189.Xr sysctl 8
190variables and
191.Xr loader 8
192tunables:
193.Bl -tag -width indent
194.It Va dev.stge.%d.rxint_nframe
195Number of frames between RxDMAComplete interrupt.
196The accepted range is 1 to 255, default value is 8 frames.
197The interface has to be brought down and up again before a change takes effect.
198.It Va dev.stge.%d.rxint_dmawait
199Maximum amount of time to wait in 1us increments before issuing
200a Rx interrupt if number of frames received is less than 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 arp 4 ,
206.Xr miibus 4 ,
207.Xr netintro 4 ,
208.Xr ng_ether 4 ,
209.Xr polling 4 ,
210.Xr vlan 4 ,
211.Xr ifconfig 8
212.Sh HISTORY
213The
214.Nm
215driver was ported from
216.Nx
217and first appeared in
218.Fx 6.2 .
219The
220.Nx
221version was written by
222.An Jason R. Thorpe
223.Aq thorpej@NetBSD.org .
224.Sh AUTHORS
225The
226.Nm
227driver was ported by
228.An Pyun YongHyeon
229.Aq yongari@FreeBSD.org .
230