1.\" Copyright (c) 1997, 1998 2.\" Bill Paul <wpaul@ctr.columbia.edu>. All rights reserved. 3.\" 4.\" Redistribution and use in source and binary forms, with or without 5.\" modification, are permitted provided that the following conditions 6.\" are met: 7.\" 1. Redistributions of source code must retain the above copyright 8.\" notice, this list of conditions and the following disclaimer. 9.\" 2. Redistributions in binary form must reproduce the above copyright 10.\" notice, this list of conditions and the following disclaimer in the 11.\" documentation and/or other materials provided with the distribution. 12.\" 3. All advertising materials mentioning features or use of this software 13.\" must display the following acknowledgement: 14.\" This product includes software developed by Bill Paul. 15.\" 4. Neither the name of the author nor the names of any co-contributors 16.\" may be used to endorse or promote products derived from this software 17.\" without specific prior written permission. 18.\" 19.\" THIS SOFTWARE IS PROVIDED BY Bill Paul AND CONTRIBUTORS ``AS IS'' AND 20.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 21.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 22.\" ARE DISCLAIMED. IN NO EVENT SHALL Bill Paul OR THE VOICES IN HIS HEAD 23.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 24.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 25.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS 26.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 27.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 28.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF 29.\" THE POSSIBILITY OF SUCH DAMAGE. 30.\" 31.\" $FreeBSD$ 32.\" 33.Dd August 16, 1998 34.Dt XL 4 35.Os 36.Sh NAME 37.Nm xl 38.Nd "3Com Etherlink XL and Fast Etherlink XL ethernet device driver" 39.Sh SYNOPSIS 40.Cd "device miibus" 41.Cd "device xl" 42.Sh DESCRIPTION 43The 44.Nm 45driver provides support for PCI ethernet adapters and embedded 46controllers based on the 3Com "boomerang," "cyclone," "hurricane" 47and "tornado" bus-master Etherlink XL chips. 48This includes the 3c900-TPO, 3c900-COMBO, 3c905-TX and 493c905-T4; the 3c900B-TPO, 3c900B-TPC, 3c900B-FL, 3c900B-COMBO, 3c905B-T4, 503c905B-TX, 3c905B-FX, 3c905B-COMBO and 3c905C-TX; the 3c980, 3c980B 51and 3c980C server adapters; the 3cSOHO100-TX 52OfficeConnect and 3c450 HomeConnect adapters; the 3c555, 3c556 and 533c556B mini-PCI adapters; the 3c575TX, 3c575B, 3c575C, 3cxfem656, 543cxfem656B, and 3cxfem656C cardbus 55adapters; and the embedded 3c905-TX, 3c905B-TX 563c905C-TX, and 3c920B-EMB ethernet hardware in certain Dell Optiplex and Dell 57Precision desktop machines, certain Dell Latitude laptop docking 58stations, and various Nvidia NForce based motherboards. 59.Pp 60The Etherlink XL chips support built-in 10baseT, 10base2 and 10base5 61transceivers as well as an MII bus for externally attached PHY 62transceivers. 63The 3c905 series typically uses a National Semiconductor 64NS 83840A 10/100 PHY for 10/100 Mbps support in full or half-duplex. 65The 3c905B adapters have built-in autonegotiation logic mapped onto 66the MII for compatibility with previous drivers. 67Fast Etherlink XL 68adapters such as the 3c905-TX and 3c905B-TX are capable of 10 or 69100Mbps data rates in either full or half duplex and can be manually 70configured for any supported mode or automatically negotiate the highest 71possible mode with a link partner. 72.Pp 73The 74.Nm 75driver supports the following media types: 76.Pp 77.Bl -tag -width xxxxxxxxxxxxxxxxxxxx 78.It autoselect 79Enable autoselection of the media type and options. 80Note that this 81option is only available with the 3c905 and 3c905B adapters with 82external PHYs or built-in autonegotiation logic. 83For 3c900 adapters, 84the driver will choose the mode specified in the EEPROM. 85The user can 86change this by adding media options to the 87.Pa /etc/rc.conf 88file. 89.It 10baseT/UTP 90Set 10Mbps operation. 91The 92.Ar mediaopt 93option can also be used to select either 94.Ar full-duplex 95or 96.Ar half-duplex 97modes. 98.It 100baseTX 99Set 100Mbps (fast ethernet) operation. 100The 101.Ar mediaopt 102option can also be used to select either 103.Ar full-duplex 104or 105.Ar half-duplex 106modes. 107.It 10base5/AUI 108Enable AUI transceiver (available only on COMBO cards). 109.It 10base2/BNC 110Enable BNC coax transceiver (available only on COMBO cards). 111.El 112.Pp 113The 114.Nm 115driver supports the following media options: 116.Pp 117.Bl -tag -width xxxxxxxxxxxxxxxxxxxx 118.It full-duplex 119Force full duplex operation 120.It half-duplex 121Force half duplex operation. 122.El 123.Pp 124Note that the 100baseTX media type is only available if supported 125by the adapter. 126For more information on configuring this device, see 127.Xr ifconfig 8 . 128.Sh DIAGNOSTICS 129.Bl -diag 130.It "xl%d: couldn't map memory" 131A fatal initialization error has occurred. 132.It "xl%d: couldn't map interrupt" 133A fatal initialization error has occurred. 134.It "xl%d: device timeout" 135The device has stopped responding to the network, or there is a problem with 136the network connection (cable). 137.It "xl%d: no memory for rx list" 138The driver failed to allocate an mbuf for the receiver ring. 139.It "xl%d: no memory for tx list" 140The driver failed to allocate an mbuf for the transmitter ring when 141allocating a pad buffer or collapsing an mbuf chain into a cluster. 142.It "xl%d: command never completed!" 143Some commands issued to the 3c90x ASIC take time to complete: the 144driver is supposed to wait until the 'command in progress' bit in 145the status register clears before continuing. 146In rare instances, this 147bit may not clear. 148To avoid getting caught in an infinite wait loop, 149the driver only polls the bit for a finite number of times before 150giving up, at which point it issues this message. 151This message may 152be printed during driver initialization on slower machines. 153If you 154see this message but the driver continues to function normally, the 155message can probably be ignored. 156.It "xl%d: chip is in D3 power state -- setting to D0" 157This message applies only to 3c905B adapters, which support power 158management. 159Some operating systems place the 3c905B in low power 160mode when shutting down, and some PCI BIOSes fail to bring the chip 161out of this state before configuring it. 162The 3c905B loses all of 163its PCI configuration in the D3 state, so if the BIOS does not set 164it back to full power mode in time, it won't be able to configure it 165correctly. 166The driver tries to detect this condition and bring 167the adapter back to the D0 (full power) state, but this may not be 168enough to return the driver to a fully operational condition. 169If 170you see this message at boot time and the driver fails to attach 171the device as a network interface, you will have to perform second 172warm boot to have the device properly configured. 173.Pp 174Note that this condition only occurs when warm booting from another 175operating system. 176If you power down your system prior to booting 177.Fx , 178the card should be configured correctly. 179.It "xl%d: WARNING: no media options bits set in the media options register!" 180This warning may appear when using the driver on some Dell Latitude 181docking stations with built-in 3c905-TX adapters. 182For whatever the 183reason, the 'MII available' bit in the media options register on 184this particular equipment is not set, even though it should be (the 1853c905-TX always uses an external PHY transceiver). The driver will 186attempt to guess the proper media type based on the PCI device ID 187word. 188The driver makes a lot of noise about this condition because 189the author considers it a manufacturing defect. 190.El 191.Sh SEE ALSO 192.Xr arp 4 , 193.Xr miibus 4 , 194.Xr netintro 4 , 195.Xr ng_ether 4 , 196.Xr ifconfig 8 197.Sh HISTORY 198The 199.Nm 200device driver first appeared in 201.Fx 3.0 . 202.Sh AUTHORS 203The 204.Nm 205driver was written by 206.An Bill Paul Aq wpaul@ctr.columbia.edu . 207