xref: /freebsd/share/man/man4/et.4 (revision 2e3507c25e42292b45a5482e116d278f5515d04d)
1.\"
2.\" Copyright (c) 2007 The DragonFly Project.  All rights reserved.
3.\"
4.\" Redistribution and use in source and binary forms, with or without
5.\" modification, are permitted provided that the following conditions
6.\" are met:
7.\"
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
12.\"    the documentation and/or other materials provided with the
13.\"    distribution.
14.\" 3. Neither the name of The DragonFly Project nor the names of its
15.\"    contributors may be used to endorse or promote products derived
16.\"    from this software without specific, prior written permission.
17.\"
18.\" THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
19.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
20.\" LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
21.\" FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE
22.\" COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
23.\" INCIDENTAL, SPECIAL, EXEMPLARY OR CONSEQUENTIAL DAMAGES (INCLUDING,
24.\" BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
25.\" LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
26.\" AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
27.\" OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
28.\" OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
29.\" SUCH DAMAGE.
30.\"
31.Dd December 9, 2011
32.Dt ET 4
33.Os
34.Sh NAME
35.Nm et
36.Nd "Agere ET1310 10/100/Gigabit Ethernet driver"
37.Sh SYNOPSIS
38To compile this driver into the kernel,
39place the following lines in your
40kernel configuration file:
41.Bd -ragged -offset indent
42.Cd "device miibus"
43.Cd "device et"
44.Ed
45.Pp
46Alternatively, to load the driver as a
47module at boot time, place the following line in
48.Xr loader.conf 5 :
49.Bd -literal -offset indent
50if_et_load="YES"
51.Ed
52.Sh DESCRIPTION
53The
54.Nm
55driver supports PCI Express Ethernet adapters based on the Agere ET1310 chip.
56.\".Pp
57.\"Support for Jumbo Frames is provided via the interface MTU setting.
58.\"Selecting an MTU larger than 1500 bytes with the
59.\".Xr ifconfig 8
60.\"utility configures the adapter to receive and transmit Jumbo Frames.
61.\"The maximum MTU setting for Jumbo Frames is 15572.
62.\"This value coincides with the maximum Jumbo Frames size of 15594.
63.Pp
64The
65.Nm
66driver supports the following media types:
67.Pp
68.Bl -tag -width 10baseT/UTP -compact
69.It autoselect
70Enable autoselection of the media types and options.
71The user can manually override
72the autoselected mode by adding media options to the
73.Pa /etc/rc.conf
74file.
75.Pp
76.It 10baseT/UTP
77Set 10Mbps operation.
78The
79.Ar mediaopt
80option can also be used to select either
81.Ar full-duplex
82or
83.Ar half-duplex
84modes.
85.Pp
86.It 100baseTX
87Set 100Mbps (Fast Ethernet) operation.
88The
89.Ar mediaopt
90option can also be used to select either
91.Ar full-duplex
92or
93.Ar half-duplex
94modes.
95.Pp
96.It 1000baseT
97Set 1000Mbps (Gigabit Ethernet) operation.
98The
99.Ar mediaopt
100option can only be set to
101.Ar full-duplex
102mode.
103.El
104.Pp
105The
106.Nm
107driver supports the following
108.Ar media
109options:
110.Pp
111.Bl -tag -width full-duplex -compact
112.It full-duplex
113Force full-duplex operation.
114.Pp
115.It half-duplex
116Force half-duplex operation.
117.El
118.Pp
119Note that the 1000baseT media type is only available
120if it is supported by the adapter.
121For more information on configuring this device, see
122.Xr ifconfig 8 .
123.Sh HARDWARE
124The
125.Nm
126driver supports Agere ET1310 10/100/Gigabit
127Ethernet adapters.
128.Sh TUNABLES
129.Bl -tag -width ".Va hw.et.rx_intr_npkts"
130.It Va hw.et.rx_intr_npkts
131This value controls how many packets should be received
132before a receive interrupt is generated.
133The default value is 32.
134It is recommended to set this value above 38 to prevent the host from being
135livelocked under a high degree of stress.
136.It Va hw.et.rx_intr_delay
137This value delays the generation of receive interrupts
138in units of ~4 microseconds.
139It is used together with
140.Va hw.et.rx_intr_npkts
141to achieve RX interrupt moderation.
142The default value is 20.
143.It Va hw.et.tx_intr_nsegs
144This value controls how many segments (not packets) should be transmitted
145before a transmit interrupt is generated.
146The default value is 126.
147It is recommended to set this value below 280 to prevent
148the TX ring from underflowing.
149.It Va hw.et.timer
150This value controls how often a timer interrupt should be generated.
151It is used together with
152.Va hw.et.tx_intr_nsegs
153to achieve TX interrupt moderation.
154The default value is 1000000000 (nanoseconds).
155.El
156.Sh SEE ALSO
157.Xr altq 4 ,
158.Xr arp 4 ,
159.Xr miibus 4 ,
160.Xr netintro 4 ,
161.Xr ng_ether 4 ,
162.Xr vlan 4 ,
163.Xr ifconfig 8
164.Sh HISTORY
165The
166.Nm
167device driver first appeared in
168.Dx 1.11 .
169The first
170.Fx
171release to include it was
172.Fx 8.0 .
173.Sh AUTHORS
174.An -nosplit
175The
176.Nm
177driver was written by
178.An Sepherosa Ziehau Aq Mt sepherosa@gmail.com
179for
180.Dx .
181It was ported to
182.Fx
183by
184.An Xin LI Aq Mt delphij@FreeBSD.org .
185