1.\" Copyright (c) 1997, 1998, 1999 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: src/share/man/man4/wi.4,v 1.9.4.12 2003/03/03 18:59:15 trhodes Exp $ 32.\" $OpenBSD: wi.4tbl,v 1.14 2002/04/29 19:53:50 jsyn Exp $ 33.\" 34.Dd May 2, 2002 35.Dt WI 4 36.Os 37.Sh NAME 38.Nm wi 39.Nd "WaveLAN/IEEE, PRISM-II and Spectrum24 802.11DS wireless network driver" 40.Sh SYNOPSIS 41.Cd "device wi" 42.Cd "device wlan" 43.Sh DESCRIPTION 44The 45.Nm 46driver provides support for wireless network adapters based around 47the Lucent Hermes, Intersil PRISM-II, Intersil PRISM-2.5, and Symbol 48Spectrum24 chipsets. 49All four chipsets provide a similar interface to the driver. 50.Pp 51All host/device interaction is via programmed I/O. 52Supported features include 802.11 and 802.3 frames, power management, BSS, 53IBSS, WDS and old-style Lucent ad-hoc operation modes. 54Cards based on the Intersil PRISM-II and PRISM-2.5 chips also support a 55host-based access point mode which allows a card to act as a normal access 56point (with some assistance from the 57.Nm 58driver). 59The Lucent Hermes and Symbol Spectrum24 chipsets do not contain this 60functionality. 61PRISM-II and PRISM-2.5 chips do not support the WDS functionality. 62.Pp 63The 64.Nm 65driver encapsulates all IP and ARP traffic as 802.11 frames, however 66it can receive either 802.11 or 802.3 frames. 67Transmit speed is selectable between 1Mbps fixed, 2Mbps fixed, 2Mbps 68with auto fallback, 5.5Mbps, 8Mbps, or 11Mbps depending on your hardware. 69The Lucent WaveLAN/IEEE Silver and Gold cards as well as the Intersil 70and Symbol cards have support for WEP encryption. 71The WaveLAN Gold as well as newer Intersil and Symbol cards support 72104bit keys, the others only accept 40bit keys. 73The Lucent WaveLAN/IEEE Bronze cards do not support WEP at all. 74To enable encryption, use 75.Xr ifconfig 8 76as shown below. 77.Pp 78By default, the 79.Nm 80driver configures the card for BSS operation (aka infrastructure 81mode). 82This mode requires the use of an access point (base station). 83.Pp 84The 85.Nm 86driver also supports a point-to-point mode where the ssid is 87ignored and stations can communicate amongst themselves without the 88aid of an access point. 89Note that there are two possible point-to-point modes. 90One mode, referred to as 91.Dq "ad-hoc demo mode" , 92or 93.Dq "legacy Lucent ad-hoc mode" , 94predates the IEEE 802.11 specification and so may not interoperate 95with cards from different vendors. 96The standardized point-to-point mode, is called IBSS (or confusingly 97just ad-hoc mode), but is not supported by cards with very old 98firmware revisions. 99If your cards supports IBSS mode, it is recommended that you use it in 100preference to the 101.Dq "ad-hoc demo mode" 102in new installations. 103.Pp 104Cards based on the Intersil PRISM-II and PRISM-2.5 chips also 105have a host-based access point mode which allows the card to 106act as an access point (base station). 107Access points are different than operating in IBSS mode. 108They operate in BSS mode. 109They allow for easier roaming and bridge all ethernet traffic such 110that machines connected via an access point appear to be on the local 111ethernet segment. 112.Pp 113For more information on configuring this device, see 114.Xr ifconfig 8 . 115The 116.Nm 117driver supports 118.Xr polling 4 . 119.Pp 120Cards supported by the 121.Nm 122driver come in a variety of packages, though the most common 123are of the PCMCIA type. 124In many cases, the PCI version of a wireless card is simply 125a PCMCIA card bundled with a PCI adapter. 126The PCI adapters come in two flavors: true PCMCIA bridges and 127dumb PCMCIA bridges. 128A true PCMCIA bridge (such as those sold by Lucent) will attach 129as a real PCMCIA controller. 130The wireless card will then attach to the PCMCIA bus. 131Wireless cards in PCMCIA slots may be inserted and ejected on the fly. 132.Pp 133A dumb bridge, on the other hand, does not show up as a true PCMCIA bus. 134The wireless card will simply appear to the host as a normal PCI 135device and will not require any PCMCIA support. 136Cards in this type of adapter should only be removed when the 137machine is powered down. 138.Pp 139The following cards are among those supported by the 140.Nm 141driver: 142.Pp 143.Bl -column -compact "Linksys Instant Wireless WPC11 2.5" "Spectrum24" "PCI or PCMCIA" 144.Em "Card Chip Bus" 1453Com AirConnect 3CRWE737A Spectrum24 PCMCIA 1463Com AirConnect 3CRWE777A Prism-II PCI 147ACTIONTEC HWC01170 Prism-2.5 PCMCIA 148Addtron AWP-100 Prism-II PCMCIA 149Adtec Adlink/340C Prism-II PCMCIA 150Agere Orinoco Hermes PCMCIA 151Avaya Wireless Prism-II PCMCIA 152Blue Concentric Circle WL-379F PRISM-II CF 153BreezeNet Wireless Prism-II PCMCIA 154Buffalo WLI-PCM-S11 Prism-II PCMCIA 155Buffalo WLI-PCM-L11G Hermes PCMCIA 156Buffalo WLI-CF-S11G Prism-II CF 157Cabletron RoamAbout Hermes PCMCIA 158Compaq Agency NC5004 Prism-II PCMCIA 159Compaq WL100 Prism-II PCMCIA 160Compaq WL110 Prism-II PCMCIA 161Compaq WL200 Prism-II PCMCIA 162Contec FLEXLAN/FX-DS110-PCC Prism-II PCMCIA 163Corega PCC-11 Prism-II PCMCIA 164Corega PCCA-11 Prism-II PCMCIA 165Corega PCCB-11 Prism-II PCMCIA 166Corega CGWLPCIA11 Prism-II PCI 167Dell TrueMobile 1150 Hermes PCMCIA 168Dlink DWL520 Prism-2.5 PCI 169Dlink DWL650 Prism-2.5 PCMCIA 170ELSA XI300 Prism-II PCMCIA 171ELSA XI800 Prism-II CF 172EMTAC A2424i Prism-II PCMCIA 173Ericsson Wireless LAN CARD C11 Spectrum24 PCMCIA 174Farallon Skyline Prism-II PCMCIA 175Gemtek WL-311 Prism-2.5 PCMCIA 176Hawking Technology WE110P Prism-2.5 PCMCIA 177Home Wireless Networks Prism-II PCMCIA 178IBM High Rate Wireless Hermes PCMCIA 179ICOM SL-1100 Prism-II PCMCIA 180I-O DATA WN-B11/PCM Prism-II PCMCIA 181Intel PRO/Wireless 2011 Spectrum24 PCMCIA 182Intersil Prism II Prism-II PCMCIA 183Intersil Mini-PCI Prism-2.5 PCI 184Linksys Instant Wireless WPC11 Prism-II PCMCIA 185Linksys Instant Wireless WPC11 2.5 Prism-2.5 PCMCIA 186Linksys Instant Wireless WPC11 3.0 Prism-3 PCMCIA 187Lucent WaveLAN Hermes PCMCIA 188Melco Airconnect Prism-II PCMCIA 189NANOSPEED ROOT-RZ2000 Prism-II PCMCIA 190NDC/Sohoware NCP130 Prism-II PCI 191NEC CMZ-RT-WP Prism-II PCMCIA 192NEC PK-WL001 Prism-II PCMCIA 193NEC PC-WL/11C PRISM-II PCMCIA 194Netgear MA401 Prism-II PCMCIA 195NTT-ME 11Mbps Wireless LAN Prism-II PCMCIA 196Planex GeoWave/GW-NS110 Prism-II PCMCIA 197Planex GW-NS11H Prism-II PCMCIA 198Proxim Harmony Prism-II PCMCIA 199Proxim RangeLAN-DS Prism-II PCMCIA 200Samsung MagicLAN SWL-2000N Prism-II PCMCIA 201SMC 2602 EZ Connect (3.3V) Prism-II PCI or PCMCIA 202SMC 2632 EZ Connect Prism-II PCMCIA 203Socket Low Power WLAN-CF Prism-II CF 204Sony PCWA-C100 Lucent PCMCIA 205Symbol Spectrum24 Spectrum24 PCMCIA 206Symbol LA-4100 Spectrum24 CF 207TDK LAK-CD011WL Prism-II PCMCIA 208Toshiba Wireless LAN Card Prism-II PCMCIA 209U.S. Robotics Wireless Card 2410 Prism-II PCMCIA 210.El 211.Pp 212Several vendors sell PCI adapters built around the PLX Technology 9050 213or 9052 chip. 214The following such adapters are supported or expected to work: 215.Pp 216.Bl -tag -compact -width "Global Sun Technology GL24110P (untested)" 217.It 3Com AirConnect 3CRWE777A (3.3V) 218.It Belkin F5D6000 (a rebadged WL11000P) 219.It Eumitcom WL11000P 220.It Global Sun Technology GL24110P (untested) 221.It Global Sun Technology GL24110P02 222.It LinkSys WDT11 (a rebadged GL24110P02) 223.It Netgear MA301 224.It US Robotics 2415 (rebadged WL11000P) 225.El 226.Sh EXAMPLES 227Join an existing BSS network (ie: connect to an access point): 228.Pp 229.Dl "ifconfig wi0 inet 192.168.0.20 netmask 0xffffff00" 230.Pp 231Join a specific BSS network with network name 232.Dq Li my_net : 233.Pp 234.Dl "ifconfig wi0 inet 192.168.0.20 netmask 0xffffff00 ssid my_net" 235.Pp 236Join a specific BSS network with WEP encryption: 237.Bd -literal -offset indent 238ifconfig wi0 inet 192.168.0.20 netmask 0xffffff00 ssid my_net \e 239 wepmode on wepkey 0x8736639624 240.Ed 241.Pp 242Join a Lucent legacy demo ad-hoc network with network name 243.Dq Li my_net : 244.Bd -literal -offset indent 245ifconfig wi0 inet 192.168.0.20 netmask 0xffffff00 ssid my_net \e 246 mediaopt adhoc 247.Ed 248.Pp 249Create an IBSS network with network name 250.Dq Li my_net : 251.Bd -literal -offset indent 252ifconfig wi0 inet 192.168.0.20 netmask 0xffffff00 ssid my_net \e 253 mediaopt ibss-master 254.Ed 255.Pp 256.Em Note : 257The infrastructure for 258.Cm mediaopt ibss-master 259has not been committed yet. 260.Pp 261Join an IBSS network with network name 262.Dq Li my_net : 263.Bd -literal -offset indent 264ifconfig wi0 inet 192.168.0.22 netmask 0xffffff00 ssid my_net \e 265 mediaopt ibss 266.Ed 267.Pp 268.Em Note : 269The infrastructure for 270.Cm mediaopt ibss 271has not been committed yet. 272.Pp 273Create a host-based access point (Prism only): 274.Bd -literal -offset indent 275ifconfig wi0 inet 192.168.0.10 netmask 0xffffff00 ssid my_ap \e 276 mediaopt hostap 277.Ed 278.Pp 279Create a host-based access point with WEP enabled (Prism only): 280.Bd -literal -offset indent 281ifconfig wi0 inet 192.168.0.10 netmask 0xffffff00 ssid my_ap \e 282 wepmode on wepkey 0x1234567890 mediaopt hostap 283.Ed 284.Pp 285Create a host-based wireless bridge to fxp0 (Prism only): 286.Bd -literal -offset indent 287Add BRIDGE to the kernel config. 288ifconfig wi0 inet up ssid my_ap mediaopt hostap 289sysctl net.link.ether.bridge=1 290sysctl net.link.ether.bridge_cfg="wi0 fxp0" 291sysctl net.inet.ip.forwarding=1 292.Ed 293.Pp 294This will give you approximately the same functionality as an access 295point. 296.Sh DIAGNOSTICS 297.Bl -diag 298.It "wi%d: init failed" 299The WaveLAN card failed to come ready after an initialization command 300was issued. 301.It "wi%d: failed to allocate %d bytes on NIC" 302The driver was unable to allocate memory for transmit frames in the 303NIC's on-board RAM. 304.It "wi%d: device timeout" 305The WaveLAN failed to generate an interrupt to acknowledge a transmit 306command. 307.El 308.Sh SEE ALSO 309.Xr an 4 , 310.Xr arp 4 , 311.Xr ifmedia 4 , 312.Xr netintro 4 , 313.Xr polling 4 , 314.Xr hostapd 8 , 315.Xr ifconfig 8 , 316.Xr wpa_supplicant 8 317.Rs 318.%T HCF Light programming specification 319.%O http://web.archive.org/web/*/http://www.wavelan.com 320.Re 321.Sh HISTORY 322The 323.Nm 324device driver first appeared in 325.Fx 3.0 . 326.Sh AUTHORS 327The 328.Nm 329driver was written by 330.An Bill Paul Aq wpaul@ctr.columbia.edu . 331This man page comes from 332.Ox . 333.Sh CAVEATS 334Different regulatory domains have different default channels for adhoc 335mode. 336See 337.Xr ifconfig 8 338for information on how to change the channel. 339.Pp 340The Intersil Prism family of chips' host-based access point mode has 341bugs for station firmware versions prior to 0.8.3. 342The driver currently precludes hostap functionality older station 343firmware. 344The best version of the station firmware for the Prism family of chips 345seems to be 1.4.9. 346Some users of Prism-II and 2.5 based cards report that station firmware 347version 1.3.4 works better for them in hostap than 1.4.9. 348Older versions of the Prism station firmware have a number of issues 349with hostap mode. 350The IBSS/adhoc mode appears to work well on station firmware 1.3.1 and 351later. 352The IBSS/adhoc mode appears to have problems for some people with 353older versions of station firmware. 354.Pp 355Lucent cards prior to firmware version 6.0.4 do not support IBSS 356mode. 357These cards support only the pre 802.11 mode known as 358.Dq "demo ad-hoc mode" 359which does not interoperate with stations in IBSS mode. 360.Sh BUGS 361Not all the new messages are documented here, and many of them are 362indications of transient errors that are not indications of serious 363problems. 364.Pp 365WL200 PCI wireless cards are based on a Cirrus Logic CL-PD6729 bridge 366chips glued to an intersil prism-II pcmcia chipset w/o the PC Card 367form factor being present. 368These chips are special and require special care to use properly. 369One must set 370.Va hw.pcic.pd6729_intr_path Ns = Ns Qq Li 2 371in 372.Pa /boot/loader.conf . 373This tells the pccard system to use PCI interrupts for this odd beast. 374It is not possible to know automatically which kind of interrupts to use. 375OLDCARD devices (pcic and card) support this device. 376