/share/man/man4/bge.4

https://bitbucket.org/freebsd/freebsd-head/ · Forth · 264 lines · 264 code · 0 blank · 0 comment · 13 complexity · 7bb0fc802fb961b90cfbe7176214ad1e MD5 · raw file

  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 January 19, 2012
  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. Dell PowerEdge 1750 integrated BCM5704C NIC (10/100/1000baseTX)
  163. .It
  164. Dell PowerEdge 2550 integrated BCM5700 NIC (10/100/1000baseTX)
  165. .It
  166. Dell PowerEdge 2650 integrated BCM5703 NIC (10/100/1000baseTX)
  167. .It
  168. Dell PowerEdge R200 integrated BCM5750 NIC (10/100/1000baseTX)
  169. .It
  170. Dell PowerEdge R300 integrated BCM5722 NIC (10/100/1000baseTX)
  171. .It
  172. IBM x235 server integrated BCM5703x NIC (10/100/1000baseTX)
  173. .It
  174. HP Compaq dc7600 integrated BCM5752 NIC (10/100/1000baseTX)
  175. .It
  176. HP ProLiant NC7760 embedded Gigabit NIC (10/100/1000baseTX)
  177. .It
  178. HP ProLiant NC7770 PCI-X Gigabit NIC (10/100/1000baseTX)
  179. .It
  180. HP ProLiant NC7771 PCI-X Gigabit NIC (10/100/1000baseTX)
  181. .It
  182. HP ProLiant NC7781 embedded PCI-X Gigabit NIC (10/100/1000baseTX)
  183. .It
  184. Netgear GA302T (10/100/1000baseTX)
  185. .It
  186. SysKonnect SK-9D21 (10/100/1000baseTX)
  187. .It
  188. SysKonnect SK-9D41 (1000baseSX)
  189. .El
  190. .Sh LOADER TUNABLES
  191. The following tunables can be set at the
  192. .Xr loader 8
  193. prompt before booting the kernel, or stored in
  194. .Xr loader.conf 5 .
  195. .Bl -tag -width indent
  196. .It Va hw.bge.allow_asf
  197. Allow the ASF feature for cooperating with IPMI.
  198. Can cause system lockup problems on a small number of systems.
  199. Enabled by default.
  200. .It Va dev.bge.%d.msi
  201. Non-zero value enables MSI support on the Ethernet hardware.
  202. The default value is 1.
  203. .El
  204. .Sh SYSCTL VARIABLES
  205. The following variables are available as both
  206. .Xr sysctl 8
  207. variables and
  208. .Xr loader 8
  209. tunables:
  210. .Bl -tag -width indent
  211. .It Va dev.bge.%d.forced_collapse
  212. Allow collapsing multiple transmit buffers into a single buffer
  213. to increase transmit performance with the cost of CPU cycles.
  214. The default value is 0 to disable transmit buffer collapsing.
  215. .It Va dev.bge.%d.forced_udpcsum
  216. Enable UDP transmit checksum offloading even if controller can generate
  217. UDP datagrams with checksum value 0.
  218. UDP datagrams with checksum value 0 can confuse receiver host as it means
  219. sender did not compute UDP checksum.
  220. The default value is 0 which disables UDP transmit checksum offloading.
  221. The interface need to be brought down and up again before a change takes
  222. effect.
  223. .El
  224. .Sh DIAGNOSTICS
  225. .Bl -diag
  226. .It "bge%d: couldn't map memory"
  227. A fatal initialization error has occurred.
  228. .It "bge%d: couldn't map ports"
  229. A fatal initialization error has occurred.
  230. .It "bge%d: couldn't map interrupt"
  231. A fatal initialization error has occurred.
  232. .It "bge%d: no memory for softc struct!"
  233. The driver failed to allocate memory for per-device instance information
  234. during initialization.
  235. .It "bge%d: failed to enable memory mapping!"
  236. The driver failed to initialize PCI shared memory mapping.
  237. This might
  238. happen if the card is not in a bus-master slot.
  239. .It "bge%d: no memory for jumbo buffers!"
  240. The driver failed to allocate memory for jumbo frames during
  241. initialization.
  242. .It "bge%d: watchdog timeout"
  243. The device has stopped responding to the network, or there is a problem with
  244. the network connection (cable).
  245. .El
  246. .Sh SEE ALSO
  247. .Xr altq 4 ,
  248. .Xr arp 4 ,
  249. .Xr miibus 4 ,
  250. .Xr netintro 4 ,
  251. .Xr ng_ether 4 ,
  252. .Xr polling 4 ,
  253. .Xr vlan 4 ,
  254. .Xr ifconfig 8
  255. .Sh HISTORY
  256. The
  257. .Nm
  258. device driver first appeared in
  259. .Fx 4.5 .
  260. .Sh AUTHORS
  261. The
  262. .Nm
  263. driver was written by
  264. .An Bill Paul Aq wpaul@windriver.com .