BGE(4)                    OpenBSD Programmer's Manual                   BGE(4)

NAME
     bge - Broadcom BCM570x PCI gigabit ethernet adapter driver

SYNOPSIS
     bge* at pci? dev ? function ?

DESCRIPTION
     The bge driver provides support for various NICs based on the Broadcom
     BCM570x family of gigabit ethernet controller chips, including the fol-
     lowing:

     o   3Com 3c996-T (10/100/1000baseTX)
     o   Dell PowerEdge 2550 integrated BCM5700 NIC (10/100/1000baseTX)
     o   SysKonnect SK-9D21 (10/100/1000baseTX)
     o   SysKonnect SK-9D41 (1000baseSX)

     All of these NICs are capable of 10, 100 and 1000Mbps speeds over CAT5
     copper 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 compliant.  It supports multiple RX and TX DMA rings for QoS ap-
     plications, rules-based receive filtering, and VLAN tag stripping/inser-
     tion 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 of 1000baseX fiber applications.  Note however the de-
     vice only supports a single speed in TBI mode.

     Most cards also use the Broadcom BCM5401 or BCM5411 10/100/1000 copper
     gigabit tranceivers, which support autonegotiation of 10, 100 and
     1000mbps modes in full or half duplex.

     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     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.  full-duplex and
                 half-duplex modes are 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.

     The bge driver also supports one special link option for 1000baseTX
     cards:

     link0  With 1000baseTX cards, establishing a link between two ports re-
            quires that one port be configured as a master and the other a
            slave.  With autonegotiation, the master/slave settings will be
            chosen automatically.  However when manually selecting the link
            state, it is necessary to force one side of the link to be a mas-
            ter and the other a slave.  The bge driver configures the ports as
            slaves by default.  Setting the link0 flag with ifconfig(8) will
            set a port as a master instead.

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

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: 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 net-
     work, or there is a problem with the network connection (cable).

SEE ALSO
     arp(4), netintro(4), ifconfig(8)

HISTORY
     The bge device driver first appeared in OpenBSD 3.0.

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

OpenBSD 3.0                   September 27, 2001                             2
