1.\" $NetBSD: bge.4,v 1.16 2019/02/20 17:00:20 msaitoh Exp $ 2.\" 3.\" Copyright (c) 2003 The NetBSD Foundation, Inc. 4.\" All rights reserved. 5.\" 6.\" This code is derived from software contributed to The NetBSD Foundation 7.\" by Matthias Scheler <tron@NetBSD.org>. 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.\" 18.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS 19.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED 20.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR 21.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS 22.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 23.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 24.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS 25.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 26.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 27.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 28.\" POSSIBILITY OF SUCH DAMAGE. 29.\" 30.Dd February 20, 2019 31.Dt BGE 4 32.Os 33.Sh NAME 34.Nm bge 35.Nd Broadcom BCM57xx/BCM590x 10/100/Gigabit Ethernet driver 36.Sh SYNOPSIS 37.Cd "bge* at pci? dev ? function ?" 38.Pp 39Configuration of PHYs may also be necessary. 40See 41.Xr mii 4 . 42.Sh DESCRIPTION 43The 44.Nm 45driver provides support for various NICs based on the Broadcom BCM570x, 46571x, 572x, 575x, 576x, 578x, 5776x and 5778x Gigabit Ethernet controller 47chips and the 590x and 5779x Fast Ethernet controller chips, 48including the following: 49.Pp 50.Bl -bullet -compact 51.It 523Com 3c996-T (10/100/1000baseT) 53.It 543Com 3c996-SX (1000baseSX) 55.It 563Com 3c996B-T (10/100/1000baseT) 57.It 58Allied-Telesis AT-2972LX10/LC 59.It 60Dell PowerEdge 1750 integrated BCM5704C NIC (10/100/1000baseT) 61.It 62Dell PowerEdge 2550 integrated BCM5700 NIC (10/100/1000baseT) 63.It 64Dell PowerEdge 2650 integrated BCM5703 NIC (10/100/1000baseT) 65.It 66Fujitsu PRIMEPOWER 250/450 LAN (10/100/1000baseT) 67.It 68Fujitsu PW0G8GE1U (1000baseSX) 69.It 70Fujitsu PW0G8GE2U (10/100/1000baseT) 71.It 72Fujitsu PW008GE4 (1000baseSX) 73.It 74Fujitsu PW008GE5 (10/100/1000baseT) 75.It 76Fujitsu PW008QG1U (10/100/1000baseT) 77.It 78HP ProLiant NC320T PCI-E Gigabit NIC (10/100/1000baseT) 79.It 80HP ProLiant NC320m PCI-E Gigabit NIC (10/100/1000baseT) 81.It 82HP ProLiant NC331T PCI-E Gigabit NIC (10/100/1000baseT) 83.It 84HP ProLiant NC332T PCI-E Gigabit NIC (10/100/1000baseT) 85.It 86HP ProLiant NC370F PCI-X Gigabit NIC (1000baseSX) 87.It 88HP ProLiant NC370T PCI-X Gigabit NIC (10/100/1000baseT) 89.It 90HP ProLiant NC1020 PCI Gigabit NIC (10/100/1000baseT) 91.It 92HP ProLiant NC6770 PCI-X Gigabit NIC (1000baseSX) 93.It 94HP ProLiant NC7760 embedded PCI Gigabit NIC (10/100/1000baseT) 95.It 96HP ProLiant NC7770 PCI-X Gigabit NIC (10/100/1000baseT) 97.It 98HP ProLiant NC7771 PCI-X Gigabit NIC (10/100/1000baseT) 99.It 100HP ProLiant NC7780 embedded PCI-X Gigabit NIC (10/100/1000baseT) 101.It 102HP ProLiant NC7781 embedded PCI-X Gigabit NIC (10/100/1000baseT) 103.It 104HP ProLiant NC7782 embedded PCI-X Gigabit NIC (10/100/1000baseT) 105.It 106IBM ThinkPad T43/T43p integrated BCM5751M NIC (10/100/1000baseT) 107.It 108IBM xSeries 235 integrated BCM5703X NIC (10/100/1000baseT) 109.It 110IBM xSeries 305 integrated BCM5703X NIC (10/100/1000baseT) 111.It 112Netgear GA302T (10/100/1000baseT) 113.It 114SysKonnect SK-9D21 (10/100/1000baseT) 115.It 116SysKonnect SK-9D41 (1000baseSX) 117.El 118.Pp 119The 120.Nm 121driver supports IPv4 IP, TCP, and UDP checksum offload for receive, 122IP checksum offload for transmit, VLAN tag insertion and stripping, 123as well as a 256-bit multicast hash filter. 124The BCM5717, BCM5718, BCM5723, BCM5754, BCM5755, BCM5761, BCM5762, BCM5764, 125BCM5784, BCM5785, BCM5787 and BCM577xx chips also support IPv6 receive TCP/UDP 126checksum offload. 127The 128.Nm 129driver supports this feature of the chip. 130See 131.Xr ifconfig 8 132for information on how to enable this feature. 133.Pp 134The BCM5700, BCM5701, BCM5702, BCM5703, BCM5704, BCM5714, BCM5717, BCM5719, 135BCM5720, BCM5762, BCM5780, BCM57765 and BCM57766 also support jumbo frames, 136which can be configured via the interface MTU setting. 137Selecting an MTU larger than 1500 bytes with the 138.Xr ifconfig 8 139utility configures the adapter to receive and transmit Jumbo frames. 140.Pp 141The level of interrupt mitigation for received packets can be adjusted 142with the 143.Li hw.bge.rx_lvl 144.Xr sysctl 8 145control. 146A value of 1 yields a 147.Nm 148interrupt for every two full-sized Ethernet frames. 149Each increment of the value will, roughly, halve receive interrupt rate, 150up to a maximum of 5, which interrupts about every 30 to 40 full-sized 151TCP segments. 152.Pp 153The 154.Nm 155driver supports the following media types: 156.Bl -tag -width 1000baseSX 157.It Cm autoselect 158Enable autoselection of the media type and options. 159The user can manually override 160the autoselected mode by adding media options to the appropriate 161.Xr ifconfig.if 5 162file. 163.It Cm 10baseT 164Set 10Mbps operation. 165The 166.Xr ifconfig 8 167.Ic mediaopt 168option can also be used to select either 169.Cm full-duplex 170or 171.Cm half-duplex 172modes. 173.It Cm 100baseTX 174Set 100Mbps (Fast Ethernet) operation. 175The 176.Xr ifconfig 8 177.Ic mediaopt 178option can also be used to select either 179.Cm full-duplex 180or 181.Cm half-duplex 182modes. 183.It Cm 1000baseT 184Set 1000baseT operation over twisted pair. 185Both 186.Cm full-duplex 187and 188.Cm half-dupex 189modes are supported. 190.It Cm 1000baseSX 191Set 1000Mbps (Gigabit Ethernet) operation. 192Both 193.Cm full-duplex 194and 195.Cm half-duplex 196modes are supported. 197.El 198.Pp 199The 200.Nm 201driver supports the following media options: 202.Bl -tag -width full-duplex 203.It Cm full-duplex 204Force full duplex operation. 205.It Cm half-duplex 206Force half duplex operation. 207.El 208.Pp 209For more information on configuring this device, see 210.Xr ifconfig 8 . 211.Sh DIAGNOSTICS 212.Bl -diag 213.It "bge%d: can't find mem space" 214A fatal initialization error has occurred. 215.It "bge%d: couldn't map interrupt" 216A fatal initialization error has occurred. 217.It "bge%d: watchdog timeout -- resetting" 218The device has stopped responding to the network, or there is a problem with 219the network connection (cable). 220.El 221.Sh SEE ALSO 222.Xr arp 4 , 223.Xr brgphy 4 , 224.Xr ifmedia 4 , 225.Xr mii 4 , 226.Xr netintro 4 , 227.Xr pci 4 , 228.Xr ifconfig 8 229.Sh HISTORY 230The 231.Nm 232driver first appeared in 233.Nx 1.6.1 . 234.Sh AUTHORS 235.An -nosplit 236The 237.Nm 238driver was written by 239.An Bill Paul 240.Aq wpaul@windriver.com 241for 242.Fx 243and ported to 244.Nx 245by 246.An Frank van der Linden 247.Aq fvdl@wasabisystems.com , 248.An Jason R. Thorpe 249.Aq thorpej@wasabisystems.com 250and 251.An Jonathan Stone 252.Aq jonathan@dsg.stanford.edu . 253