195d67482SBill Paul.\" Copyright (c) 2001 Wind River Systems 295d67482SBill Paul.\" Copyright (c) 1997, 1998, 1999, 2000, 2001 395d67482SBill Paul.\" Bill Paul <wpaul@windriver.com>. All rights reserved. 495d67482SBill Paul.\" 595d67482SBill Paul.\" Redistribution and use in source and binary forms, with or without 695d67482SBill Paul.\" modification, are permitted provided that the following conditions 795d67482SBill Paul.\" are met: 895d67482SBill Paul.\" 1. Redistributions of source code must retain the above copyright 995d67482SBill Paul.\" notice, this list of conditions and the following disclaimer. 1095d67482SBill Paul.\" 2. Redistributions in binary form must reproduce the above copyright 1195d67482SBill Paul.\" notice, this list of conditions and the following disclaimer in the 1295d67482SBill Paul.\" documentation and/or other materials provided with the distribution. 1395d67482SBill Paul.\" 3. All advertising materials mentioning features or use of this software 1495d67482SBill Paul.\" must display the following acknowledgement: 1595d67482SBill Paul.\" This product includes software developed by Bill Paul. 1695d67482SBill Paul.\" 4. Neither the name of the author nor the names of any co-contributors 1795d67482SBill Paul.\" may be used to endorse or promote products derived from this software 1895d67482SBill Paul.\" without specific prior written permission. 1995d67482SBill Paul.\" 2095d67482SBill Paul.\" THIS SOFTWARE IS PROVIDED BY Bill Paul AND CONTRIBUTORS ``AS IS'' AND 2195d67482SBill Paul.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 2295d67482SBill Paul.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 2395d67482SBill Paul.\" ARE DISCLAIMED. IN NO EVENT SHALL Bill Paul OR THE VOICES IN HIS HEAD 2495d67482SBill Paul.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 2595d67482SBill Paul.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 2695d67482SBill Paul.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS 2795d67482SBill Paul.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 2895d67482SBill Paul.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 2995d67482SBill Paul.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF 3095d67482SBill Paul.\" THE POSSIBILITY OF SUCH DAMAGE. 3195d67482SBill Paul.\" 3295d67482SBill Paul.\" $FreeBSD$ 3395d67482SBill Paul.\" 346a38205eSChristian Brueffer.Dd October 25, 2005 3595d67482SBill Paul.Dt BGE 4 3695d67482SBill Paul.Os 3795d67482SBill Paul.Sh NAME 3895d67482SBill Paul.Nm bge 39b1a83d0aSChristian Brueffer.Nd "Broadcom BCM570x/5714/5721/5750/5751/5789 PCI Gigabit Ethernet adapter driver" 4095d67482SBill Paul.Sh SYNOPSIS 4116d78bb8STom RhodesTo compile this driver into the kernel, 4216d78bb8STom Rhodesplace the following lines in your 4390296834STom Rhodeskernel configuration file: 4486e3186eSTom Rhodes.Bd -ragged -offset indent 4595d67482SBill Paul.Cd "device miibus" 4695d67482SBill Paul.Cd "device bge" 4786e3186eSTom Rhodes.Ed 4886e3186eSTom Rhodes.Pp 4916d78bb8STom RhodesAlternatively, to load the driver as a 5016d78bb8STom Rhodesmodule at boot time, place the following line in 5186e3186eSTom Rhodes.Xr loader.conf 5 : 5286e3186eSTom Rhodes.Bd -literal -offset indent 5386e3186eSTom Rhodesif_bge_load="YES" 5486e3186eSTom Rhodes.Ed 5595d67482SBill Paul.Sh DESCRIPTION 5695d67482SBill PaulThe 5795d67482SBill Paul.Nm 58ed598065SChristian Bruefferdriver provides support for various NICs based on the Broadcom BCM570x, 59b1a83d0aSChristian Brueffer5714, 5721, 5750, 5751 and 5789 families of Gigabit Ethernet controller chips. 6095d67482SBill Paul.Pp 6195d67482SBill PaulAll of these NICs are capable of 10, 100 and 1000Mbps speeds over CAT5 6295d67482SBill Paulcopper cable, except for the SysKonnect SK-9D41 which supports only 6395d67482SBill Paul1000Mbps over multimode fiber. 6469826705SRuslan ErmilovThe BCM570x builds upon the technology of the Alteon Tigon II. 6569826705SRuslan ErmilovIt has two R4000 CPU cores and is PCI v2.2 and PCI-X v1.0 compliant. 6669826705SRuslan ErmilovIt supports IP, TCP 67959d6c24SRuslan Ermilovand UDP checksum offload for both receive and transmit, 6895d67482SBill Paulmultiple RX and TX DMA rings for QoS applications, rules-based 6995d67482SBill Paulreceive filtering, and VLAN tag stripping/insertion as well as 7069826705SRuslan Ermilova 256-bit multicast hash filter. 7169826705SRuslan ErmilovAdditional features may be 7295d67482SBill Paulprovided via value-add firmware updates. 7395d67482SBill PaulThe BCM570x supports TBI (ten bit interface) and GMII 742b3d1b3aSChristian Brueffertransceivers, which means it can be used with either copper or 1000baseX 7569826705SRuslan Ermilovfiber applications. 7669826705SRuslan ErmilovNote however the device only supports a single 7795d67482SBill Paulspeed in TBI mode. 7895d67482SBill Paul.Pp 79a02e220cSJohn PolstraMost BCM5700-based cards also use the Broadcom BCM5401 or BCM5411 10/100/1000 80f87717faSMike Pritchardcopper gigabit transceivers, 811d705c5cSColin Percivalwhich support autonegotiation of 10, 100 and 1000Mbps modes in 8295d67482SBill Paulfull or half duplex. 8395d67482SBill Paul.Pp 84a02e220cSJohn PolstraThe BCM570x also supports jumbo frames, which can be configured 8595d67482SBill Paulvia the interface MTU setting. 8695d67482SBill PaulSelecting an MTU larger than 1500 bytes with the 8795d67482SBill Paul.Xr ifconfig 8 8895d67482SBill Paulutility configures the adapter to receive and transmit jumbo frames. 8995d67482SBill PaulUsing jumbo frames can greatly improve performance for certain tasks, 9095d67482SBill Paulsuch as file transfers and data streaming. 9195d67482SBill Paul.Pp 9295d67482SBill PaulThe 9395d67482SBill Paul.Nm 9495d67482SBill Pauldriver supports the following media types: 9569826705SRuslan Ermilov.Bl -tag -width ".Cm 10baseT/UTP" 9695d67482SBill Paul.It Cm autoselect 9795d67482SBill PaulEnable autoselection of the media type and options. 9895d67482SBill PaulThe user can manually override 9995d67482SBill Paulthe autoselected mode by adding media options to 10095d67482SBill Paul.Xr rc.conf 5 . 10195d67482SBill Paul.It Cm 10baseT/UTP 10295d67482SBill PaulSet 10Mbps operation. 10395d67482SBill PaulThe 10495d67482SBill Paul.Xr ifconfig 8 10595d67482SBill Paul.Ic mediaopt 10695d67482SBill Pauloption can also be used to select either 10795d67482SBill Paul.Cm full-duplex 10895d67482SBill Paulor 10995d67482SBill Paul.Cm half-duplex 11095d67482SBill Paulmodes. 11195d67482SBill Paul.It Cm 100baseTX 11279e8b03aSChristian BruefferSet 100Mbps (Fast Ethernet) operation. 11395d67482SBill PaulThe 11495d67482SBill Paul.Xr ifconfig 8 11595d67482SBill Paul.Ic mediaopt 11695d67482SBill Pauloption can also be used to select either 11795d67482SBill Paul.Cm full-duplex 11895d67482SBill Paulor 11995d67482SBill Paul.Cm half-duplex 12095d67482SBill Paulmodes. 12195d67482SBill Paul.It Cm 1000baseTX 12244704bfdSRuslan ErmilovSet 1000baseTX operation over twisted pair. 12344704bfdSRuslan ErmilovOnly 12495d67482SBill Paul.Cm full-duplex 125b4cb26bfSPaul Saabmode is supported. 12695d67482SBill Paul.It Cm 1000baseSX 12779e8b03aSChristian BruefferSet 1000Mbps (Gigabit Ethernet) operation. 12895d67482SBill PaulBoth 12995d67482SBill Paul.Cm full-duplex 13095d67482SBill Pauland 13195d67482SBill Paul.Cm half-duplex 13295d67482SBill Paulmodes are supported. 13395d67482SBill Paul.El 13495d67482SBill Paul.Pp 13595d67482SBill PaulThe 13695d67482SBill Paul.Nm 13795d67482SBill Pauldriver supports the following media options: 13869826705SRuslan Ermilov.Bl -tag -width ".Cm full-duplex" 13995d67482SBill Paul.It Cm full-duplex 14095d67482SBill PaulForce full duplex operation. 14195d67482SBill Paul.It Cm half-duplex 14295d67482SBill PaulForce half duplex operation. 14395d67482SBill Paul.El 14495d67482SBill Paul.Pp 14595d67482SBill PaulThe 14695d67482SBill Paul.Nm 14795d67482SBill Pauldriver also supports one special link option for 1000baseTX cards: 14869826705SRuslan Ermilov.Bl -tag -width ".Cm link0" 14995d67482SBill Paul.It Cm link0 15095d67482SBill PaulWith 1000baseTX cards, establishing a link between two ports requires 15195d67482SBill Paulthat one port be configured as a master and the other a slave. 15295d67482SBill PaulWith autonegotiation, 15395d67482SBill Paulthe master/slave settings will be chosen automatically. 15495d67482SBill PaulHowever when manually selecting the link state, it is necessary to 15595d67482SBill Paulforce one side of the link to be a master and the other a slave. 15695d67482SBill PaulThe 15795d67482SBill Paul.Nm 15895d67482SBill Pauldriver configures the ports as slaves by default. 15995d67482SBill PaulSetting the 16095d67482SBill Paul.Cm link0 16195d67482SBill Paulflag with 16295d67482SBill Paul.Xr ifconfig 8 16395d67482SBill Paulwill set a port as a master instead. 16495d67482SBill Paul.El 16595d67482SBill Paul.Pp 16695d67482SBill PaulFor more information on configuring this device, see 16795d67482SBill Paul.Xr ifconfig 8 . 16869f9d7b1SSimon L. B. Nielsen.Sh HARDWARE 16969f9d7b1SSimon L. B. NielsenThe 17069f9d7b1SSimon L. B. Nielsen.Nm 17169f9d7b1SSimon L. B. Nielsendriver provides support for various NICs based on the Broadcom BCM570x 17279e8b03aSChristian Bruefferfamily of Gigabit Ethernet controller chips, including the 17369f9d7b1SSimon L. B. Nielsenfollowing: 17469f9d7b1SSimon L. B. Nielsen.Pp 17569f9d7b1SSimon L. B. Nielsen.Bl -bullet -compact 17669f9d7b1SSimon L. B. Nielsen.It 17769f9d7b1SSimon L. B. Nielsen3Com 3c996-T (10/100/1000baseTX) 17869f9d7b1SSimon L. B. Nielsen.It 17969f9d7b1SSimon L. B. NielsenDell PowerEdge 1750 integrated BCM5704C NIC (10/100/1000baseTX) 18069f9d7b1SSimon L. B. Nielsen.It 18169f9d7b1SSimon L. B. NielsenDell PowerEdge 2550 integrated BCM5700 NIC (10/100/1000baseTX) 18269f9d7b1SSimon L. B. Nielsen.It 18369f9d7b1SSimon L. B. NielsenDell PowerEdge 2650 integrated BCM5703 NIC (10/100/1000baseTX) 18469f9d7b1SSimon L. B. Nielsen.It 18569f9d7b1SSimon L. B. NielsenIBM x235 server integrated BCM5703x NIC (10/100/1000baseTX) 18669f9d7b1SSimon L. B. Nielsen.It 18769f9d7b1SSimon L. B. NielsenHP ProLiant NC7760 embedded Gigabit NIC (10/100/1000baseTX) 18869f9d7b1SSimon L. B. Nielsen.It 18969f9d7b1SSimon L. B. NielsenHP ProLiant NC7770 PCI-X Gigabit NIC (10/100/1000baseTX) 19069f9d7b1SSimon L. B. Nielsen.It 19169f9d7b1SSimon L. B. NielsenHP ProLiant NC7781 embedded PCI-X Gigabit NIC (10/100/1000baseTX) 19269f9d7b1SSimon L. B. Nielsen.It 19369f9d7b1SSimon L. B. NielsenNetgear GA302T (10/100/1000baseTX) 19469f9d7b1SSimon L. B. Nielsen.It 19569f9d7b1SSimon L. B. NielsenSysKonnect SK-9D21 (10/100/1000baseTX) 19669f9d7b1SSimon L. B. Nielsen.It 19769f9d7b1SSimon L. B. NielsenSysKonnect SK-9D41 (1000baseSX) 19869f9d7b1SSimon L. B. Nielsen.El 19995d67482SBill Paul.Sh DIAGNOSTICS 20095d67482SBill Paul.Bl -diag 20195d67482SBill Paul.It "bge%d: couldn't map memory" 20295d67482SBill PaulA fatal initialization error has occurred. 20395d67482SBill Paul.It "bge%d: couldn't map ports" 20495d67482SBill PaulA fatal initialization error has occurred. 20595d67482SBill Paul.It "bge%d: couldn't map interrupt" 20695d67482SBill PaulA fatal initialization error has occurred. 20795d67482SBill Paul.It "bge%d: no memory for softc struct!" 20895d67482SBill PaulThe driver failed to allocate memory for per-device instance information 20995d67482SBill Paulduring initialization. 21095d67482SBill Paul.It "bge%d: failed to enable memory mapping!" 21195d67482SBill PaulThe driver failed to initialize PCI shared memory mapping. 21295d67482SBill PaulThis might 21395d67482SBill Paulhappen if the card is not in a bus-master slot. 21495d67482SBill Paul.It "bge%d: no memory for jumbo buffers!" 21595d67482SBill PaulThe driver failed to allocate memory for jumbo frames during 21695d67482SBill Paulinitialization. 21795d67482SBill Paul.It "bge%d: watchdog timeout" 21895d67482SBill PaulThe device has stopped responding to the network, or there is a problem with 21995d67482SBill Paulthe network connection (cable). 22095d67482SBill Paul.El 22195d67482SBill Paul.Sh SEE ALSO 22295d67482SBill Paul.Xr arp 4 , 223071d726dSTom Rhodes.Xr miibus 4 , 22495d67482SBill Paul.Xr netintro 4 , 22595d67482SBill Paul.Xr ng_ether 4 , 2266a38205eSChristian Brueffer.Xr polling 4 , 22795d67482SBill Paul.Xr vlan 4 , 22895d67482SBill Paul.Xr ifconfig 8 22995d67482SBill Paul.Sh HISTORY 23095d67482SBill PaulThe 23195d67482SBill Paul.Nm 23295d67482SBill Pauldevice driver first appeared in 23369826705SRuslan Ermilov.Fx 4.5 . 23495d67482SBill Paul.Sh AUTHORS 23595d67482SBill PaulThe 23695d67482SBill Paul.Nm 23795d67482SBill Pauldriver was written by 23895d67482SBill Paul.An Bill Paul Aq wpaul@windriver.com . 239