]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/blob - share/man/man4/bge.4
disk(9): Fix a few mandoc related errors
[FreeBSD/FreeBSD.git] / share / man / man4 / bge.4
1 .\" Copyright (c) 2001 Wind River Systems
2 .\" Copyright (c) 1997, 1998, 1999, 2000, 2001
3 .\"     Bill Paul <wpaul@windriver.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 August 18, 2017
35 .Dt BGE 4
36 .Os
37 .Sh NAME
38 .Nm bge
39 .Nd "Broadcom BCM57xx/BCM590x Gigabit/Fast Ethernet driver"
40 .Sh SYNOPSIS
41 To compile this driver into the kernel,
42 place the following lines in your
43 kernel configuration file:
44 .Bd -ragged -offset indent
45 .Cd "device miibus"
46 .Cd "device bge"
47 .Ed
48 .Pp
49 Alternatively, to load the driver as a
50 module at boot time, place the following line in
51 .Xr loader.conf 5 :
52 .Bd -literal -offset indent
53 if_bge_load="YES"
54 .Ed
55 .Sh DESCRIPTION
56 The
57 .Nm
58 driver provides support for various NICs based on the Broadcom BCM570x,
59 571x, 572x, 575x, 576x, 578x, 5776x and 5778x Gigabit Ethernet controller
60 chips and the 590x and 5779x Fast Ethernet controller chips.
61 .Pp
62 All of these NICs are capable of 10, 100 and 1000Mbps speeds over CAT5
63 copper cable, except for the SysKonnect SK-9D41 which supports only
64 1000Mbps over multimode fiber.
65 The BCM570x builds upon the technology of the Alteon Tigon II.
66 It has two R4000 CPU cores and is PCI v2.2 and PCI-X v1.0 compliant.
67 It supports IP, TCP
68 and UDP checksum offload for both receive and transmit,
69 multiple RX and TX DMA rings for QoS applications, rules-based
70 receive filtering, and VLAN tag stripping/insertion as well as
71 a 256-bit multicast hash filter.
72 Additional features may be
73 provided via value-add firmware updates.
74 The BCM570x supports TBI (ten bit interface) and GMII
75 transceivers, which means it can be used with either copper or 1000baseX
76 fiber applications.
77 Note however the device only supports a single
78 speed in TBI mode.
79 .Pp
80 Most BCM5700-based cards also use the Broadcom BCM5401 or BCM5411 10/100/1000
81 copper gigabit transceivers,
82 which support autonegotiation of 10, 100 and 1000Mbps modes in
83 full or half duplex.
84 .Pp
85 The BCM5700, BCM5701, BCM5702, BCM5703, BCM5704, BCM5714, BCM5717, BCM5719,
86 BCM5720, BCM5780 and BCM57765 also support jumbo frames, which can be
87 configured via the interface MTU setting.
88 Selecting an MTU larger than 1500 bytes with the
89 .Xr ifconfig 8
90 utility configures the adapter to receive and transmit jumbo frames.
91 Using jumbo frames can greatly improve performance for certain tasks,
92 such as file transfers and data streaming.
93 .Pp
94 The
95 .Nm
96 driver supports the following media types:
97 .Bl -tag -width ".Cm 10baseT/UTP"
98 .It Cm autoselect
99 Enable autoselection of the media type and options.
100 The user can manually override
101 the autoselected mode by adding media options to
102 .Xr rc.conf 5 .
103 .It Cm 10baseT/UTP
104 Set 10Mbps operation.
105 The
106 .Xr ifconfig 8
107 .Ic mediaopt
108 option can also be used to select either
109 .Cm full-duplex
110 or
111 .Cm half-duplex
112 modes.
113 .It Cm 100baseTX
114 Set 100Mbps (Fast Ethernet) operation.
115 The
116 .Xr ifconfig 8
117 .Ic mediaopt
118 option can also be used to select either
119 .Cm full-duplex
120 or
121 .Cm half-duplex
122 modes.
123 .It Cm 1000baseTX
124 Set 1000baseTX operation over twisted pair.
125 Only
126 .Cm full-duplex
127 mode is supported.
128 .It Cm 1000baseSX
129 Set 1000Mbps (Gigabit Ethernet) operation.
130 Both
131 .Cm full-duplex
132 and
133 .Cm half-duplex
134 modes are supported.
135 .El
136 .Pp
137 The
138 .Nm
139 driver supports the following media options:
140 .Bl -tag -width ".Cm full-duplex"
141 .It Cm full-duplex
142 Force full duplex operation.
143 .It Cm half-duplex
144 Force half duplex operation.
145 .El
146 .Pp
147 For more information on configuring this device, see
148 .Xr ifconfig 8 .
149 .Sh HARDWARE
150 The
151 .Nm
152 driver provides support for various NICs based on the Broadcom BCM570x
153 family of Gigabit Ethernet controller chips, including the
154 following:
155 .Pp
156 .Bl -bullet -compact
157 .It
158 3Com 3c996-SX (1000baseSX)
159 .It
160 3Com 3c996-T (10/100/1000baseTX)
161 .It
162 Apple Thunderbolt Display (10/100/1000baseTX)
163 .It
164 Apple Thunderbolt to Gigabit Ethernet Adapter (10/100/1000baseTX)
165 .It
166 Dell PowerEdge 1750 integrated BCM5704C NIC (10/100/1000baseTX)
167 .It
168 Dell PowerEdge 2550 integrated BCM5700 NIC (10/100/1000baseTX)
169 .It
170 Dell PowerEdge 2650 integrated BCM5703 NIC (10/100/1000baseTX)
171 .It
172 Dell PowerEdge R200 integrated BCM5750 NIC (10/100/1000baseTX)
173 .It
174 Dell PowerEdge R300 integrated BCM5722 NIC (10/100/1000baseTX)
175 .It
176 IBM x235 server integrated BCM5703x NIC (10/100/1000baseTX)
177 .It
178 HP Compaq dc7600 integrated BCM5752 NIC (10/100/1000baseTX)
179 .It
180 HP ProLiant NC7760 embedded Gigabit NIC (10/100/1000baseTX)
181 .It
182 HP ProLiant NC7770 PCI-X Gigabit NIC (10/100/1000baseTX)
183 .It
184 HP ProLiant NC7771 PCI-X Gigabit NIC (10/100/1000baseTX)
185 .It
186 HP ProLiant NC7781 embedded PCI-X Gigabit NIC (10/100/1000baseTX)
187 .It
188 Netgear GA302T (10/100/1000baseTX)
189 .It
190 SysKonnect SK-9D21 (10/100/1000baseTX)
191 .It
192 SysKonnect SK-9D41 (1000baseSX)
193 .El
194 .Sh LOADER TUNABLES
195 The following tunables can be set at the
196 .Xr loader 8
197 prompt before booting the kernel, or stored in
198 .Xr loader.conf 5 .
199 .Bl -tag -width indent
200 .It Va hw.bge.allow_asf
201 Allow the ASF feature for cooperating with IPMI.
202 Can cause system lockup problems on a small number of systems.
203 Enabled by default.
204 .It Va dev.bge.%d.msi
205 Non-zero value enables MSI support on the Ethernet hardware.
206 The default value is 1.
207 .El
208 .Sh SYSCTL VARIABLES
209 The following variables are available as both
210 .Xr sysctl 8
211 variables and
212 .Xr loader 8
213 tunables:
214 .Bl -tag -width indent
215 .It Va dev.bge.%d.forced_collapse
216 Allow collapsing multiple transmit buffers into a single buffer
217 to increase transmit performance with the cost of CPU cycles.
218 The default value is 0 to disable transmit buffer collapsing.
219 .It Va dev.bge.%d.forced_udpcsum
220 Enable UDP transmit checksum offloading even if controller can generate
221 UDP datagrams with checksum value 0.
222 UDP datagrams with checksum value 0 can confuse receiver host as it means
223 sender did not compute UDP checksum.
224 The default value is 0 which disables UDP transmit checksum offloading.
225 The interface need to be brought down and up again before a change takes
226 effect.
227 .El
228 .Sh DIAGNOSTICS
229 .Bl -diag
230 .It "bge%d: couldn't map memory"
231 A fatal initialization error has occurred.
232 .It "bge%d: couldn't map ports"
233 A fatal initialization error has occurred.
234 .It "bge%d: couldn't map interrupt"
235 A fatal initialization error has occurred.
236 .It "bge%d: no memory for softc struct!"
237 The driver failed to allocate memory for per-device instance information
238 during initialization.
239 .It "bge%d: failed to enable memory mapping!"
240 The driver failed to initialize PCI shared memory mapping.
241 This might
242 happen if the card is not in a bus-master slot.
243 .It "bge%d: firmware handshake timed out, found 0xffffffff"
244 The device was physically disconnected from the system, or there is a problem with
245 the device causing it to stop responding to the host it is attached to.
246 .It "bge%d: no memory for jumbo buffers!"
247 The driver failed to allocate memory for jumbo frames during
248 initialization.
249 .It "bge%d: watchdog timeout"
250 The device has stopped responding to the network, or there is a problem with
251 the network connection (cable).
252 .El
253 .Sh SEE ALSO
254 .Xr altq 4 ,
255 .Xr arp 4 ,
256 .Xr miibus 4 ,
257 .Xr netintro 4 ,
258 .Xr ng_ether 4 ,
259 .Xr polling 4 ,
260 .Xr vlan 4 ,
261 .Xr ifconfig 8
262 .Sh HISTORY
263 The
264 .Nm
265 device driver first appeared in
266 .Fx 4.5 .
267 .Sh AUTHORS
268 The
269 .Nm
270 driver was written by
271 .An Bill Paul Aq Mt wpaul@windriver.com .
272 .Sh BUGS
273 Hotplug is not currently supported in
274 .Fx ,
275 hence, Thunderbolt interfaces need to be connected prior to system power up on
276 Apple systems in order for the interface to be detected.
277 Also, due to the lack of hotplug support, Thunderbolt-based interfaces must not be removed
278 while the system is up as the kernel is currently unable to cope with a
279 .Nm
280 interface disappearing.