Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
BGE(4)			     Kernel Interfaces Manual			  BGE(4)

NAME
     bge -- Broadcom BCM57xx/BCM590x Gigabit/Fast Ethernet driver

SYNOPSIS
     To compile this driver into the kernel, place the following lines in your
     kernel configuration file:

	   device miibus
	   device bge

     Alternatively, to load the driver as a module at boot time, place the
     following line in loader.conf(5):

	   if_bge_load="YES"

DESCRIPTION
     The  bge  driver  provides  support  for various NICs based on the Broadcom
     BCM570x, 571x, 572x, 575x, 576x, 578x, 5776x  and	5778x  Gigabit	Ethernet
     controller chips and the 590x and 5779x Fast Ethernet controller chips.

     All of these NICs are capable of 10, 100 and 1000Mbps speeds over CAT5 cop-
     per  cable,  except for the SysKonnect SK-9D41 which supports only 1000Mbps
     over multimode fiber.  The BCM570x builds upon the technology of the Alteon
     Tigon II.	It has two R4000 CPU cores and is PCI v2.2 and PCI-X  v1.0  com-
     pliant.   It supports IP, TCP and UDP checksum offload for both receive and
     transmit, multiple RX and TX DMA rings for  QoS  applications,  rules-based
     receive  filtering,  and  VLAN tag stripping/insertion as well as a 256-bit
     multicast hash filter.  Additional features may be provided  via  value-add
     firmware  updates.   The  BCM570x supports TBI (ten bit interface) and GMII
     transceivers, which means it can be used with either  copper  or  1000baseX
     fiber  applications.   Note however the device only supports a single speed
     in TBI mode.

     Most  BCM5700-based  cards  also  use  the  Broadcom  BCM5401  or	 BCM5411
     10/100/1000  copper  gigabit transceivers, which support autonegotiation of
     10, 100 and 1000Mbps modes in full or half duplex.

     The BCM5700, BCM5701, BCM5702, BCM5703, BCM5704, BCM5714, BCM5717, BCM5719,
     BCM5720, BCM5780 and BCM57765 also support jumbo frames, which can be  con-
     figured  via  the interface MTU setting.  Selecting an MTU larger than 1500
     bytes with the ifconfig(8) utility configures the adapter	to  receive  and
     transmit  jumbo frames.  Using jumbo frames can greatly improve performance
     for certain tasks, such as file transfers and data streaming.

     The bge driver supports the following media types:

     autoselect   Enable autoselection of the media type and options.  The  user
		  can  manually  override  the autoselected mode by adding media
		  options to rc.conf(5).

     10baseT/UTP  Set 10Mbps operation.  The  ifconfig(8)  mediaopt  option  can
		  also	be  used  to  select  either  full-duplex or half-duplex
		  modes.

     100baseTX	  Set  100Mbps	(Fast  Ethernet)  operation.   The   ifconfig(8)
		  mediaopt  option can also be used to select either full-duplex
		  or half-duplex modes.

     1000baseTX   Set 1000baseTX operation over twisted pair.  Only  full-duplex
		  mode is supported.

     1000baseSX   Set  1000Mbps  (Gigabit Ethernet) operation.	Both full-duplex
		  and half-duplex modes are supported.

     The bge driver supports the following media options:

     full-duplex  Force full duplex operation.

     half-duplex  Force half duplex operation.

     For more information on configuring this device, see ifconfig(8).

HARDWARE
     The bge driver provides support for various  NICs	based  on  the	Broadcom
     BCM570x  family of Gigabit Ethernet controller chips, including the follow-
     ing:

     *	 3Com 3c996-SX (1000baseSX)
     *	 3Com 3c996-T (10/100/1000baseTX)
     *	 Apple Thunderbolt Display (10/100/1000baseTX)
     *	 Apple Thunderbolt to Gigabit Ethernet Adapter (10/100/1000baseTX)
     *	 Dell PowerEdge 1750 integrated BCM5704C NIC (10/100/1000baseTX)
     *	 Dell PowerEdge 2550 integrated BCM5700 NIC (10/100/1000baseTX)
     *	 Dell PowerEdge 2650 integrated BCM5703 NIC (10/100/1000baseTX)
     *	 Dell PowerEdge R200 integrated BCM5750 NIC (10/100/1000baseTX)
     *	 Dell PowerEdge R300 integrated BCM5722 NIC (10/100/1000baseTX)
     *	 IBM x235 server integrated BCM5703x NIC (10/100/1000baseTX)
     *	 HP Compaq dc7600 integrated BCM5752 NIC (10/100/1000baseTX)
     *	 HP ProLiant NC7760 embedded Gigabit NIC (10/100/1000baseTX)
     *	 HP ProLiant NC7770 PCI-X Gigabit NIC (10/100/1000baseTX)
     *	 HP ProLiant NC7771 PCI-X Gigabit NIC (10/100/1000baseTX)
     *	 HP ProLiant NC7781 embedded PCI-X Gigabit NIC (10/100/1000baseTX)
     *	 Netgear GA302T (10/100/1000baseTX)
     *	 SysKonnect SK-9D21 (10/100/1000baseTX)
     *	 SysKonnect SK-9D41 (1000baseSX)

LOADER TUNABLES
     The following tunables can be set at the loader(8)  prompt  before  booting
     the kernel, or stored in loader.conf(5).

     hw.bge.allow_asf
	     Allow  the ASF feature for cooperating with IPMI.	Can cause system
	     lockup problems on a small number of systems.  Enabled by default.

     dev.bge.%d.msi
	     Non-zero value enables MSI support on the Ethernet  hardware.   The
	     default value is 1.

SYSCTL VARIABLES
     The  following  variables	are  available	as  both sysctl(8) variables and
     loader(8) tunables:

     dev.bge.%d.forced_collapse
	     Allow collapsing multiple transmit buffers into a single buffer  to
	     increase transmit performance with the cost of CPU cycles.  The de-
	     fault value is 0 to disable transmit buffer collapsing.

     dev.bge.%d.forced_udpcsum
	     Enable UDP transmit checksum offloading even if controller can gen-
	     erate  UDP  datagrams  with  checksum  value 0.  UDP datagrams with
	     checksum value 0 can confuse receiver host as it means  sender  did
	     not  compute  UDP	checksum.  The default value is 0 which disables
	     UDP transmit checksum offloading.	The interface need to be brought
	     down and up again before a change takes effect.

DIAGNOSTICS
     bge%d: couldn't map memory  A fatal initialization error has occurred.

     bge%d: couldn't map ports	A fatal initialization error has occurred.

     bge%d: couldn't map interrupt  A fatal initialization error has occurred.

     bge%d: no memory for softc struct!  The driver failed  to	allocate  memory
     for per-device instance information during initialization.

     bge%d:  failed  to  enable memory mapping!  The driver failed to initialize
     PCI shared memory mapping.  This might happen if the card is not in a  bus-
     master slot.

     bge%d: firmware handshake timed out, found 0xffffffff  The device was phys-
     ically  disconnected from the system, or there is a problem with the device
     causing it to stop responding to the host it is attached to.

     bge%d: no memory for jumbo buffers!  The driver failed to	allocate  memory
     for jumbo frames during initialization.

     bge%d:  watchdog timeout  The device has stopped responding to the network,
     or there is a problem with the network connection (cable).

SEE ALSO
     altq(4), arp(4), miibus(4), netintro(4), ng_ether(4), polling(4),	vlan(4),
     ifconfig(8)

HISTORY
     The bge device driver first appeared in FreeBSD 4.5.

AUTHORS
     The bge driver was written by Bill Paul <wpaul@windriver.com>.

BUGS
     Hotplug  is  not  currently supported in FreeBSD, hence, Thunderbolt inter-
     faces need to be connected prior to system power up on Apple systems in or-
     der for the interface to be detected.  Also, due to  the  lack  of  hotplug
     support,  Thunderbolt-based interfaces must not be removed while the system
     is up as the kernel is currently unable to cope with a bge interface disap-
     pearing.

     The  UDP  transmit  checksum  offloading  is  disabled  by   default,   see
     dev.bge.%d.forced_udpcsum.   To avoid problems when the interface is a mem-
     ber of a bridge(4) interface, all transmit checksum offloading is initially
     disabled in this case.  Transmit checksum offloading can be  enabled  using
     ifconfig(8).

FreeBSD ports 15.quarterly	January 16, 2026			  BGE(4)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=bge&sektion=4&manpath=FreeBSD+15.1-RELEASE+and+Ports.quarterly>

home | help