Devices bnxe(7D)
NAME
bnxe - Broadcom NetXtreme II 10 Gigabit Ethernet Device
DriverSYNOPSIS
/dev/bnxe*
DESCRIPTION
The bnxe Ethernet driver is a multi-threaded, loadable,
clonable, GLDv3-based driver supporting the Data Link Pro-
vider Interface, dlpi(7P), over Broadcom NetXtreme II 10Gigabit Ethernet controllers. Multiple NetXtreme II con-
trollers installed within the system are supported by the driver.The bnxe driver provides basic support for the NetXtreme II
10 Gigabit line of devices. Functions include chip initiali-
zation, frame transit and receive, multicast and promiscuous support, and error recovery and reporting. NetXtreme II 10 Gigabit devices provide 10/100/1000/10000 Mbps networking interfaces for Copper and 1000/2500/10000 Mbps for Fiber physical interfaces.The IEEE 802.3 standard specifies an auto-negotiation proto-
col to automatically select the mode and speed of operation.The PHY device is capable of doing auto-negotiation with the
remote-end of the link (Link Partner) and receives the capa-
bilities from the remote end. It selects the Highest CommonDenominator mode of operation. It also supports forced-mode
of operation where the driver can select desired mode of operation. Driver ConfigurationThere are two facilities by which the administrator can con-
figure each NetXtreme II 10 Gigabit device in the system, the hardware configuration file and the NDD subsystem. The hardware configuration file is located at/kernel/drv/bnxe.conf and contains a list of options that
are read when the driver is loaded. The NDD subsystemoptions are used as a way to modify the device's configura-
tion at runtime. All changes made with the NDD subsystem are lost after device reset or system reboot. The remainder of this section discusses configuration options common to both facilities. Link Speed and Duplex ParametersThe primary way link speed and duplex settings are config-
ured is through the following list of options. Non-zero
values turn them on, a value of zero disables them.SunOS 5.11 Last change: 25 Sep 2009 1
Devices bnxe(7D)
o adv_autoneg_cap
o adv_10000fdx_cap
o adv_2500fdx_cap
o adv_1000fdx_cap
o adv_100fdx_cap
o adv_100hdx_cap
o adv_10fdx_cap
o adv_10hdx_cap
When the adv_autoneg_cap option is set to a non-zero value,
the remaining options control which capabilities we adver-
tise to the link partner during auto-negotiation. When the
adv_autoneg_cap option is set to zero, the driver walks down
the list, from the highest speed / duplex option to thelowest, and use the first non-zero option as the speed /
duplex setting to force the link with. Flow Control ParametersFlow control parameters configure the flow control proper-
ties of the physical link. The properties are configured through the following list of options. Like the link speedand duplex settings, non-zero values turn them on, a value
of zero disables them.autoneg_flow Controls whether or not the flow control
properties are auto-negotiated or forced.
txpause_cap Controls whether or not Tx flow control can
be configured.rxpause_cap Controls whether or not Rx flow control can
be configured. If Tx flow control is enabled, pause frames are sent to the link partner when Rx resources are low. If Rx flow control is enabled, the hardware automatically stops transmitting if pause frames are received. How Tx and Rx flow control are enabled depends on how the driver is configured. When theautoneg_flow option is non-zero, the flow control capabili-
ties become advertisement settings and theauto-negotiation
SunOS 5.11 Last change: 25 Sep 2009 2
Devices bnxe(7D)
process dictates what actual flow control settings are used.If the autoneg_flow option is zero, the flow control capa-
bilities specified are still advertised if the link isauto-negotiated, but the actual flow control settings are
forced to the specified settings. Hardware Configuration File Options checksum This parameter configures checksum calculation tasks to be offloaded to the hardware. If 0 then no checksums are offloaded. If 1 then IPv4 headerchecksums offloaded for Rx/Tx. If 2
then TCP/UDP/IPv4 header checksums are
offloaded for Rx/Tx. The default is 2
(TCP/UDP/IPv4 checksums).
mtu This parameter controls the MTU (Mes-
sage Tranfer Unit) size of the hardware. Egress Ethernet frames larger than this size is fragmented and ingress Ethernet frames larger than this size is dropped. The valid range is from 60 to 9216 (decimal). The default value is 1500.rx_descs These parameters control how many
tx_descs packets can be in-transit within the
driver. The greater the number ofpackets that are allowed to be in-
transit, the more memory the driver requires to operate. The valid range is 1 to 32767. The default value is 1280.rx_free_reclaim These parameters control the threshold
tx_free_reclaim of freely available packet descriptors
that are allowed to be free before reposting back to the hardware so they can be reused for future packets. The valid range is 0 to the value ofrx_descs for Rx and tx_descs for Tx. A
freely available packet descriptor is, for Rx a packet that has been received and processing finished, and for Tx a packet that has already been sent. Thedefault value is 1/16 of rx_descs for
Rx and tx_descs for Tx.
SunOS 5.11 Last change: 25 Sep 2009 3
Devices bnxe(7D)
interrupt_coalesce This parameter gives the administrator
the ability to allow the hardware to collect more network events before interrupting the host processor.Interrupt coalescing within the NetX-
treme II 10 Gigabit hardware is quiteaggressive resulting in great sus-
tained throughput but low latency for interactive traffic. Setting to 1 turns it on and 0 off. Default is off.rx_copy_threshold These parameters control the packet
tx_copy_threshold size threshold, in number of bytes,
when packets are double copied before processing. A value of 0 turns off double copies. For Tx a value of 1 means all packets are copied. For Rx a really large value, that is, greater than the mtu, that means all packets are copied. The default is 0 for bothRx and Tx which implies that no copy-
ing is ever performed. NDD Subsystem Configuration Options Hardware Capability ParametersThe following is a read-only list of capabilities the device
is capable of supporting. A value of 1 means the capabilityis supported. A value of 0 means the capability is not sup-
ported.o autoneg_cap
o 10000fdx_cap
o 2500fdx_cap
o 1000fdx_cap
o 1000fdx_cap
o 100hdx_cap
o 10fdx_cap
o 10hdx_cap
o 10hdx_cap
o txpause_cap
SunOS 5.11 Last change: 25 Sep 2009 4
Devices bnxe(7D)
Hardware Capability Advertisement ParametersThe auto-negotiation advertisement parameters work exactly
as described in the Hardware Capability Parameters section of this man page with the difference that they show what is actually being advertised Miscellaneous Link Parameters These parameters show the other phy options.o autoneg_flow
Link Status Parameters These parameters show the current status of the physical link.link_status Shows if the link is up or down.
link_speed Shows the current speed of the link.
link_duplex Shows the current duplex setting of the
link.link_txpause Shows whether or not TX flow control is
enabled.link_rxpause Shows whether or not RX flow control is
enabled. Convenience Parameters The following parameters display multiple settings at once. They are intended for convenience.hw_cap Shows all the device hardware capabilities
adv_cap Shows all the capabilities we are advertising or
have forced. Debug The following parameters are used to aid in debugging driver issues. These should be used in conjunction with kstat statistic diagnostics.debug Shows the state of all the internal packet descrip-
tor queues.SunOS 5.11 Last change: 25 Sep 2009 5
Devices bnxe(7D)
FILES/dev/bnx[instance] bnxe character special device.
/kernel/drv/bnxe.conf Configuration file of the bnxe
driver./kernel/drv/bnxe 32-bit i386 driver binary
/kernel/drv/amd64/bnxe 64-bit i386 driver binary
release.txt Revision history of the driverATTRIBUTES
See attributes(5) for descriptions of the following attri-
butes:____________________________________________________________
| ATTRIBUTE TYPE ATTRIBUTE VALUE |
| Availability BRCMbnxe |
| Architecture x86 ||___________________________________________________________|
SEE ALSO
ndd(1M), attributes(5), dlpi(7P), gld(7D), Broadcom NetXtreme II 10 Gigabit Adapter Driver Installation Notes Writing Device Drivers STREAMS Programming Guide Network Interfaces Programmer's GuideSunOS 5.11 Last change: 25 Sep 2009 6