elxl - 3Com Ethernet device driver
The elxl driver currently supports the following network
cards: EtherLink XL (3C900-TPO, 3C900-COMBO, 3C900B-TPO,
3C900B-COMBO, and 3C900B-TPC), EtherLink XL 10/100 (3C905-TX
Fast, 3C905-T4 Fast, 3C905B-TX Fast, 3C905B-T4 Fast, and
3C905C-TX-M Fast), and EtherLink Server 10/100 (3C980-TX
Fast and 3C980C-TXM).
The elxl Ethernet driver is a multi-threaded, loadable,
clonable, STREAMS hardware driver supporting the connection-
less Data Link Provider Interface, dlpi(7P). Multiple Eth-
erLink XL controllers installed within the system are sup-
ported by the driver. The elxl driver provides basic support
for the EtherLink hardware. Functions include chip initiali-
zation, frame transmit and receive, multicast and promiscu-
ous mode support, and error recovery and reporting.
The cloning, character-special device /dev/elxl is used to
access all EtherLink devices installed within the system.
The elxl driver is dependent on /kernel/misc/gld, a loadable
kernel module that provides the elxl driver with the DLPI
and STREAMS functionality required of a LAN driver. See
gld(7D) for more details on the primatives supported by the
The values returned by the driver in the DL_INFO_ACK primi-
tive in response to the DL_INFO_REQ from the user are as
o Maximum SDU is 1500 (ETHERMTU).
o Minimum SDU is 0. The driver will pad to the mandatory
60-octet minimum packet size.
o The dlsap address length is 8.
o MAC type is DL_ETHER.
o The sap length value is -2, meaning the physical
address component is followed immediately by a 2-byte
sap component within the DLSAP address.
o The broadcast address value is Ethernet/IEEE broadcast
o Media Type: Auto Select
Known Problems and Limitations
o 3C905B cards in a Compaq ProLiant 6500 can fail to
generate interrupts. There is no known workaround for
this problem. However, because some slots appear to be
more prone to the problem than others, try correcting
the problem by moving the card to another PCI slot. If
that fails, try rebooting the machine a number of
times to free the card from the wedged state.
o Early versions of the 3Com 3C905C-TX-M adapter
firmware do not support PXE network boot on Solaris
systems. If you are using a version earlier than 4.11,
upgrade the firmware. The PXE version is indicated by
the Managed Boot Agent version number. This number is
not normally displayed during boot, but is shown on
the PXE configuration screen.
The /kernel/drv/elxl.conf file supports the following tun-
able properties that you can set in the elxl.conf file:
Minimum number of bytes in transmit FIFO (if lower
then the packet size), before NIC starts the frame
transfer. The higher the value, the less chance for a
transmission underrun error that triggers a transmis-
sion retry. Default value is 250, maximum value is
The number of frames the device may receive from the
network without system attention before the device
begins dropping the frames. Valid range is 1 to 256.
Default is 24.
The number of outgoing frames that the system can
queue on the driver queue
before blocking a send request. Valid range is 1 to
512. Default is 128.
Minimal number of allocated receive data buffers.
Must be equal or greater than effective number of
recv-descriptors. Default (max value) is 128.
Maximum number of allocated receive data buffers.
Must be equal or greater then min-recv-data-buffers
Amount of time in addition to the standard inter-frame
time used by IEEE 802.3 deference rule. Expressed in
32 multiples of bit time. Used only in half-duplex
context. This small IFS is to make the defer-after-
transmit time slightly longer than the defer-after-
receive time. This greatly reduces the high collision
rate seen with heavy TCP traffic (almost exactly one
collision per ACK), giving slightly improved overall
throughput in half-duplex mode. Default IFS is 32.
This property is ignored in full-duplex mode.
When set, it forces full-duplex mode for NIC capable
of working in full-duplex mode. If this property is
set, the auto-negotiation feature (if supported) of
the network controller is disabled. For full duplex
operation use full-duplex=1. For half duplex use
full-duplex=0. Half-duplex operation provides better
results on older 10-Mbit networks.
speed Link speed in Mbps. Valid values are 10 and 100. If
this property is set, the auto-negotiation feature of
the network controller (if supported) is disabled.
Special character device
Configuration file for elxl driver
See attributes(5) for descriptions of the following attri-
| ATTRIBUTE TYPE | ATTRIBUTE VALUE |
| Architecture | x86 |
attributes(5), gld(7D), streamio(7I), dlpi(7P).
Man(1) output converted with