bge - SUNW,bge Gigabit Ethernet driver for Broadcom BCM5704




     The bge Gigabit Ethernet driver is a  multi-threaded,  load-
     able, clonable, GLD-based STREAMS driver supporting the Data
     Link Provider Interface,  dlpi(7P),  on  Broadcom  BCM5703C,
     BCM5704,  BCM5714,  or  BCM5715 Gigabit Ethernet controllers
     fitted to the system motherboard. These devices  incorporate
     both  MAC and PHY functions and provide three-speed (copper)
     Ethernet operation on the RJ-45 connectors.

     The bge driver functions include controller  initialization,
     frame  transmit  and receive, promiscuous and multicast sup-
     port, and error recovery and reporting.

     The bge driver and hardware  support  'auto-negotiation,'  a
     protocol   specified   by  the  1000Base-T  standard.  Auto-
     negotiation allows each device to advertise its capabilities
     and  discover  those of its peer (link partner). The highest
     common  denominator  supported  by  both  link  partners  is
     automatically  selected,  yielding  the  greatest  available
     throughput, while requiring no manual configuration. The bge
     driver also allows you to configure the advertised capabili-
     ties to less than the maximum (where the full speed  of  the
     interface  is  not required), or to force a specific mode of
     operation, irrespective of  the  link  partner's  advertised


     The cloning character-special device, /dev/bge, is  used  to
     access  all BCM570x and BCM571x devices fitted to the system

     The bge driver is dependent on /kernel/misc/gld, a  loadable
     kernel module that provides the bge driver with the DLPI and
     STREAMS functionality required of a LAN driver. See  gld(7D)
     for more details on the primitives supported by the driver.

     You must send an explicit DL_ATTACH_REQ message to associate
     the opened stream with a particular device (PPA). The PPA ID
     is interpreted as an unsigned integer data  type  and  indi-
     cates  the  corresponding device instance (unit) number. The
     driver returns an error  (DL_ERROR_ACK)  if  the  PPA  field
     value  does not correspond to a valid device instance number
     for the system. The device is initialized  on  first  attach
     and de-initialized (stopped) at last detach.

     The values returned by the driver in the DL_INFO_ACK  primi-
     tive in response to a DL_INFO_REQ are:

        o  Maximum  SDU  is   1500   (ETHERMTU   -   defined   in

        o  Minimum SDU is 0.

        o  DLSAP address length is 8.

        o  MAC type is DL_ETHER.

        o  SAP length value is -2, meaning the  physical  address
           component is followed immediately by a 2-byte SAP com-
           ponent within the DLSAP address.

        o  Broadcast address value is the Ethernet/IEEE broadcast
           address (FF:FF:FF:FF:FF:FF).

     Once  in  the  DL_ATTACHED   state,   you   must    send   a
     DL_BIND_REQ  to  associate a particular Service Access Point
     (SAP) with the stream.


     By default, the  bge  driver  performs  auto-negotiation  to
     select  the  link speed and mode. Link speed and mode can be
     any one of the following, (as  described  in  the  IEEE803.2

        o  1000 Mbps, full-duplex

        o  1000 Mbps, half-duplex

        o  100 Mbps, full-duplex

        o  100 Mbps, half-duplex

        o  10 Mbps, full-duplex

        o  10 Mbps, half-duplex

     The auto-negotiation protocol automatically selects:

        o  Speed (1000 Mbps, 100 Mbps, or 10 Mbps)

        o  Operation mode (full-duplex or half-duplex)

     as the highest common denominator  supported  by  both  link
     partners.  Because  the  bge  device supports all modes, the
     effect is to select the highest throughput mode supported by
     the other device.

     Alternatively, you can set the  capabilities  advertised  by
     the  bge  device using ndd(1M). The driver supports a number
     of parameters whose names begin with adv_ (see below).  Each
     of these parameters contains a boolean value that determines
     whether the device advertises that  mode  of  operation.  In
     addition,  the  adv_autoneg_cap  parameter  controls whether
     autonegotiation is performed. If adv_autoneg_cap is  set  to
     0,  the  driver forces the mode of operation selected by the
     first non-zero parameter in priority order as listed below:

                             (highest priority/greatest throughput)
             adv_1000fdx_cap         1000Mbps full duplex
             adv_1000hdx_cap         1000Mpbs half duplex
             adv_100fdx_cap          100Mpbs full duplex
             adv_100hdx_cap          100Mpbs half duplex
             adv_10fdx_cap           10Mpbs full duplex
             adv_10hdx_cap           10Mpbs half duplex
                                     (lowest priority/least throughput)

     For example, to prevent the device 'bge2'  from  advertising
     gigabit capabilities, enter (as super-user):

     # ndd -set /dev/bge2 adv_1000hdx_cap 0
     # ndd -set /dev/bge2 adv_1000fdx_cap 0

     All capabilities default to enabled. Note that changing  any
     capability  parameter  will  cause the link to go down while
     the      link partners  renegotiate  the  link  speed/duplex
     using the newly changed capabilities.

     The current settings of the parameters may  be  found  using
     ndd  -get.   In  addition,  the  driver  exports the current
     state, speed, and duplex setting of the link via ndd parame-
     ters  (these  are  read  only  and may not be changed).  For
     example, to check link state of device bge0:

     # ndd -get /dev/bge0 link_status
     # ndd -get /dev/bge0 link_speed
     # ndd -get /dev/bge0 link_duplex

     The output above indicates that the link is up  and  running
     at 100Mbps full-duplex.


           Character special device

           bge driver binary

           bge configuration file


     See attributes(5) for a description of the following  attri-

    |       ATTRIBUTE TYPE        |       ATTRIBUTE VALUE       |
    | Architecture                | SPARC                       |


     attributes(5), gld(7D), streamio(7I), dlpi(7P)

     Writing Device Drivers

     STREAMS Programming Guide

     Network Interfaces Programmer's Guide

Man(1) output converted with man2html