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