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 3C3SH573BT, 3C575TX, 3CCFE575BT, 3CXFE575BT, 543CCFE575CT, 3CXFE575CT, 3CCFEM656, 3CCFEM656B, and 3CCFEM656C, 553CXFEM656, 3CXFEM656B, and 3CXFEM656C CardBus 56adapters; and the embedded 3c905-TX, 3c905B-TX 573c905C-TX, and 3c920B-EMB ethernet hardware in certain Dell Optiplex and Dell 58Precision desktop machines, certain Dell Latitude laptop docking 59stations, and various Nvidia NForce based motherboards. 60.Pp 61The Etherlink XL chips support built-in 10baseT, 10base2 and 10base5 62transceivers as well as an MII bus for externally attached PHY 63transceivers. 64The 3c905 series typically uses a National Semiconductor 65NS 83840A 10/100 PHY for 10/100 Mbps support in full or half-duplex. 66The 3c905B adapters have built-in autonegotiation logic mapped onto 67the MII for compatibility with previous drivers. 68Fast Etherlink XL 69adapters such as the 3c905-TX and 3c905B-TX are capable of 10 or 70100Mbps data rates in either full or half duplex and can be manually 71configured for any supported mode or automatically negotiate the highest 72possible mode with a link partner. 73.Pp 74The 75.Nm 76driver supports the following media types: 77.Pp 78.Bl -tag -width xxxxxxxxxxxxxxxxxxxx 79.It autoselect 80Enable autoselection of the media type and options. 81Note that this 82option is only available with the 3c905 and 3c905B adapters with 83external PHYs or built-in autonegotiation logic. 84For 3c900 adapters, 85the driver will choose the mode specified in the EEPROM. 86The user can 87change this by adding media options to the 88.Pa /etc/rc.conf 89file. 90.It 10baseT/UTP 91Set 10Mbps operation. 92The 93.Ar mediaopt 94option can also be used to select either 95.Ar full-duplex 96or 97.Ar half-duplex 98modes. 99.It 100baseTX 100Set 100Mbps (fast ethernet) operation. 101The 102.Ar mediaopt 103option can also be used to select either 104.Ar full-duplex 105or 106.Ar half-duplex 107modes. 108.It 10base5/AUI 109Enable AUI transceiver (available only on COMBO cards). 110.It 10base2/BNC 111Enable BNC coax transceiver (available only on COMBO cards). 112.El 113.Pp 114The 115.Nm 116driver supports the following media options: 117.Pp 118.Bl -tag -width xxxxxxxxxxxxxxxxxxxx 119.It full-duplex 120Force full duplex operation 121.It half-duplex 122Force half duplex operation. 123.El 124.Pp 125Note that the 100baseTX media type is only available if supported 126by the adapter. 127For more information on configuring this device, see 128.Xr ifconfig 8 . 129.Pp 130Both the 3C656 family of CardBus cards and the 3C556 family of MiniPCI 131cards have a built-in proprietary modem. 132Neither the 133.Nm 134driver nor any other 135.Fx 136driver supports this modem. 137.Sh DIAGNOSTICS 138.Bl -diag 139.It "xl%d: couldn't map memory" 140A fatal initialization error has occurred. 141.It "xl%d: couldn't map interrupt" 142A fatal initialization error has occurred. 143.It "xl%d: device timeout" 144The device has stopped responding to the network, or there is a problem with 145the network connection (cable). 146.It "xl%d: no memory for rx list" 147The driver failed to allocate an mbuf for the receiver ring. 148.It "xl%d: no memory for tx list" 149The driver failed to allocate an mbuf for the transmitter ring when 150allocating a pad buffer or collapsing an mbuf chain into a cluster. 151.It "xl%d: command never completed!" 152Some commands issued to the 3c90x ASIC take time to complete: the 153driver is supposed to wait until the 'command in progress' bit in 154the status register clears before continuing. 155In rare instances, this 156bit may not clear. 157To avoid getting caught in an infinite wait loop, 158the driver only polls the bit for a finite number of times before 159giving up, at which point it issues this message. 160This message may 161be printed during driver initialization on slower machines. 162If you 163see this message but the driver continues to function normally, the 164message can probably be ignored. 165.It "xl%d: chip is in D3 power state -- setting to D0" 166This message applies only to 3c905B adapters, which support power 167management. 168Some operating systems place the 3c905B in low power 169mode when shutting down, and some PCI BIOSes fail to bring the chip 170out of this state before configuring it. 171The 3c905B loses all of 172its PCI configuration in the D3 state, so if the BIOS does not set 173it back to full power mode in time, it won't be able to configure it 174correctly. 175The driver tries to detect this condition and bring 176the adapter back to the D0 (full power) state, but this may not be 177enough to return the driver to a fully operational condition. 178If 179you see this message at boot time and the driver fails to attach 180the device as a network interface, you will have to perform second 181warm boot to have the device properly configured. 182.Pp 183Note that this condition only occurs when warm booting from another 184operating system. 185If you power down your system prior to booting 186.Fx , 187the card should be configured correctly. 188.It "xl%d: WARNING: no media options bits set in the media options register!" 189This warning may appear when using the driver on some Dell Latitude 190docking stations with built-in 3c905-TX adapters. 191For whatever the 192reason, the 'MII available' bit in the media options register on 193this particular equipment is not set, even though it should be (the 1943c905-TX always uses an external PHY transceiver). The driver will 195attempt to guess the proper media type based on the PCI device ID 196word. 197The driver makes a lot of noise about this condition because 198the author considers it a manufacturing defect. 199.El 200.Sh SEE ALSO 201.Xr arp 4 , 202.Xr miibus 4 , 203.Xr netintro 4 , 204.Xr ng_ether 4 , 205.Xr ifconfig 8 206.Sh HISTORY 207The 208.Nm 209device driver first appeared in 210.Fx 3.0 . 211.Sh AUTHORS 212The 213.Nm 214driver was written by 215.An Bill Paul Aq wpaul@ctr.columbia.edu . 216