XL(4) BSD Programmer's Manual XL(4)NAMExl - 3Com EtherLink XL and Fast EtherLink XL Ethernet driver
SYNOPSIS
xl* at pci? dev ? function ?
xl* at cardbus? dev ? function ?
amphy* at mii? phy ?
exphy* at mii? phy ?
nsphy* at mii? phy ?
DESCRIPTION
The xl device driver supports the 3Com EtherLink XL and Fast EtherLink XL
family of Ethernet cards, and embedded controllers based on the 3Com
"boomerang" and "cyclone" bus master EtherLink XL chips. This includes,
among others, the following models:
3C555 EtherLink XL MiniPCI
3C556 EtherLink XL MiniPCI
3C556B EtherLink XL MiniPCI
3C575 10/100 LAN CardBus PC Card
3C656 10/100 LAN+Modem CardBus PC Card
3C900 EtherLink XL PCI
3C900B EtherLink XL PCI
3C905 Fast EtherLink XL PCI
3C905B Fast EtherLink XL PCI
3C905C Fast EtherLink XL PCI
3C980 Fast EtherLink Server NIC
3CSOHO OfficeConnect Fast Ethernet NIC
9201 NVIDIA nForce2 integrated 3Com 9201 (nForce2-ST, nForce2-
GT)
It also supports embedded 3C905-TX and 3C905B-TX Ethernet hardware found
in certain Dell OptiPlex and Dell Precision desktop machines, as well as
some Dell Latitude laptop docking stations. Other models of 3Com network
cards are supported by the ec(4), eg(4), el(4), ep(4), and ie(4) drivers.
Category 3, 4 or 5 unshielded twisted-pair (UTP) cable should be used for
RJ-45 (10baseT), thick Ethernet coaxial (RG59 B/U, 50 ohm) for AUI/DIX,
and thin Ethernet coaxial (RG58 A/U or C/U, 50 ohm +/- 4) for BNC
(10base2). Some 3Com NICs also support MII connectors (switchable
10/100Mbps UTP). The 3C905B-FX and other similar cards are capable of
100Mbps over fiber.
The 3C985 series of Gigabit cards are supported by the ti(4) driver.
Hardware TCP/IP checksum offloading for IPv4 is supported on the 3C905B.
The following media types and options (as given to ifconfig(8)) are sup-
ported:
media autoselect
Enable autoselection of media type and options. Note that this
media type is only available with adapters that have external
PHYs or built-in autonegotiation logic. For 3C900 and 3C900B
adapters, the driver will choose the mode specified in the
EEPROM. This can be changed by adding media options to the ap-
propriate hostname.if(5) file.
media 100baseFX mediaopt full-duplex
For those cards that support it, force full-duplex 100Mbps
operation over fiber.
media 100baseFX mediaopt half-duplex
For those cards that support it, force half-duplex 100Mbps
operation over fiber.
media 100baseTX mediaopt full-duplex
Set 100Mbps (Fast Ethernet) operation and force full-duplex
mode.
media 100baseTX mediaopt half-duplex
Set 100Mbps (Fast Ethernet) operation and force half-duplex
mode.
media 10baseT mediaopt full-duplex
Set 10baseT (UTP) operation and force full-duplex mode.
media 10baseT mediaopt half-duplex
Set 10baseT (UTP) operation and force half-duplex mode.
media 10base5
Set 10base5 (thick-net) operation (half-duplex only).
media 10base2
Set 10base2 (thin-net) operation (half-duplex only).
For more information on configuring this device, see ifconfig(8). To view
a list of media types and options supported by this card try ifconfig -m
<device>. For example, ifconfig -m xl0.
DIAGNOSTICS
xl%d: couldn't map memory A fatal initialization error has occurred.
xl%d: couldn't map interrupt A fatal initialization error has occurred.
xl%d: device timeout The device has stopped responding to the network,
or there is a problem with the network connection (cable).
xl%d: no memory for rx list The driver failed to allocate an mbuf for
the receiver ring.
xl%d: no memory for tx list The driver failed to allocate an mbuf for
the transmitter ring when allocating a pad buffer or collapsing an mbuf
chain into a cluster.
xl%d: command never completed! Some commands issued to the 3C90x ASIC
take time to complete: the driver is supposed to wait until the "command
in progress" bit in the status register clears before continuing. In rare
instances, this bit may not clear. To avoid getting caught in an infinite
wait loop, the driver only polls the bit a finite number of times before
giving up, at which point it issues this message. This message may be
printed during driver initialization on slower machines. If this message
appears but the driver continues to function normally, the message can
probably be ignored.
xl%d: chip is in D3 power state -- setting to D0 This message applies
only to 3C905B adapters, which support power management. Some operating
systems place the 3C905B in low power mode when shutting down, and some
PCI BIOSes fail to bring the chip out of this state before configuring
it. The 3C905B loses all of its PCI configuration in the D3 state, so if
the BIOS does not set it back to full power mode in time, it won't be
able to configure it correctly. The driver tries to detect this condition
and bring the adapter back to the D0 (full power) state, but this may not
be enough to return the driver to a fully operational condition. If this
message appears at boot time and the driver fails to attach the device as
a network interface, a second warm boot will have to be performed to have
the device properly configured.
Note that this condition only occurs when warm booting from another
operating system. If the system is powered down prior to booting OpenBSD,
the card should be configured correctly.
xl%d: WARNING: no media options bits set in the media options
register! This warning may appear when using the driver on some Dell La-
titude docking stations with built-in 3C905-TX adapters. For whatever the
reason, the "MII available" bit in the media options register on this
particular equipment is not set, even though it should be (the 3C905-TX
always uses an external PHY transceiver). The driver will attempt to
guess the proper media type based on the PCI device ID word. The driver
makes a lot of noise about this condition because the author considers it
a manufacturing defect.
SEE ALSOamphy(4), arp(4), cardbus(4), ec(4), eg(4), el(4), ep(4), exphy(4),
ie(4), ifmedia(4), intro(4), netintro(4), nsphy(4), ti(4),
hostname.if(5), ifconfig(8)HISTORY
The xl device driver first appeared in FreeBSD 3.0. OpenBSD support was
added in OpenBSD 2.4.
AUTHORS
The xl driver was written by Bill Paul <wpaul@ctr.columbia.edu>.
MirOS BSD #10-current August 16, 1998 2