1.\" $OpenBSD: wi.4,v 1.29 2022/07/11 03:11:49 daniel Exp $ 2.\" 3.\" Copyright (c) 1997, 1998, 1999 4.\" Bill Paul <wpaul@ctr.columbia.edu>. All rights reserved. 5.\" 6.\" Redistribution and use in source and binary forms, with or without 7.\" modification, are permitted provided that the following conditions 8.\" are met: 9.\" 1. Redistributions of source code must retain the above copyright 10.\" notice, this list of conditions and the following disclaimer. 11.\" 2. Redistributions in binary form must reproduce the above copyright 12.\" notice, this list of conditions and the following disclaimer in the 13.\" documentation and/or other materials provided with the distribution. 14.\" 3. All advertising materials mentioning features or use of this software 15.\" must display the following acknowledgement: 16.\" This product includes software developed by Bill Paul. 17.\" 4. Neither the name of the author nor the names of any co-contributors 18.\" may be used to endorse or promote products derived from this software 19.\" without specific prior written permission. 20.\" 21.\" THIS SOFTWARE IS PROVIDED BY Bill Paul AND CONTRIBUTORS ``AS IS'' AND 22.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 23.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 24.\" ARE DISCLAIMED. IN NO EVENT SHALL Bill Paul OR THE VOICES IN HIS HEAD 25.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 26.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 27.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS 28.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 29.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 30.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF 31.\" THE POSSIBILITY OF SUCH DAMAGE. 32.\" 33.\" $FreeBSD: wi.4,v 1.3 1999/05/22 16:12:43 wpaul Exp $ 34.\" 35.Dd $Mdocdate: July 11 2022 $ 36.Dt WI 4 37.Os 38.Sh NAME 39.Nm wi 40.Nd WaveLAN/IEEE, PRISM 2-3, and Spectrum24 IEEE 802.11b wireless network device 41.Sh SYNOPSIS 42.Cd "# all architectures" 43.Cd "wi* at pci?" 44.Cd "wi* at pcmcia? function ?" 45.Cd "wi* at uhub? port ?" 46.Pp 47.Cd "# macppc extra attachment" 48.Cd "wi* at macobio?" 49.Sh DESCRIPTION 50The 51.Nm 52driver provides support for wireless network adapters based around 53the Lucent Hermes, Intersil PRISM-2, Intersil PRISM-2.5, Intersil PRISM-3, 54and Symbol Spectrum24 chipsets. 55All five chipsets provide a similar interface to the driver. 56.Pp 57The 58.Nm 59driver encapsulates all IP and ARP traffic as 802.11 frames, though 60it can receive either 802.11 or 802.3 frames. 61Transmit speed is selectable between 1Mbps fixed, 2Mbps fixed, 2Mbps 62with auto fallback, 5.5Mbps, 8Mbps, or 11Mbps, depending on hardware. 63.Pp 64These are the modes the 65.Nm 66driver can operate in: 67.Bl -tag -width "IBSS-masterXX" 68.It BSS mode 69Also known as 70.Em infrastructure 71mode, this is used when associating with an access point, through 72which all traffic passes. 73This mode is the default. 74.It IBSS mode 75Also known as 76.Em IEEE ad-hoc 77mode or 78.Em peer-to-peer 79mode. 80This is the standardized method of operating without an access point. 81Stations associate with a service set. 82However, actual connections between stations are peer-to-peer 83as in ad-hoc mode. 84Cards with very old firmware revisions do not support this mode. 85.It IBSS master 86Also know as 87.Em Host IBSS 88mode. 89In this mode the station takes on part of the role of an access point, 90though traffic does not pass through it to reach the other stations. 91When a group of stations are operating in IBSS mode, one of them must be 92the master, specifying the network name of the service set. 93.It Host AP 94In this mode the driver acts as an access point (base station) 95for other cards. 96Only cards based on the Intersil chipsets support this mode. 97Furthermore, this mode is not supported on USB devices. 98.It ad-hoc mode 99More accurately known as 100.Em ad-hoc demo mode . 101This mode does not require an access point; the adapter communicates with 102other ad-hoc stations within range on a peer-to-peer basis. 103This mode is not specified by the IEEE 802.11 standard and there 104may be problems interoperating with adapters manufactured by different vendors. 105.El 106.Pp 107The 108.Nm 109driver can be configured to use both software and hardware 110Wired Equivalent Privacy (WEP). 111It is strongly recommended that WEP 112not be used as the sole mechanism 113to secure wireless communication, 114due to serious weaknesses in it. 115.Pp 116The Lucent WaveLAN/IEEE Silver and Gold cards as well as the Intersil 117and Symbol cards have support for WEP encryption. 118The WaveLAN Gold as well as newer Intersil and Symbol cards support 119104-bit keys, the others only accept 40-bit keys. 120The Lucent WaveLAN/IEEE Bronze cards do not support WEP at all. 121See also 122.Sx CAVEATS 123below. 124.Pp 125The 126.Nm 127driver can be configured at runtime with 128.Xr ifconfig 8 129or on boot with 130.Xr hostname.if 5 . 131.Sh HARDWARE 132Cards supported by the 133.Nm 134driver come in a variety of packages, though the most common 135are of the PCMCIA type. 136In many cases, the PCI version of a wireless card is simply 137a PCMCIA card bundled with a PCI adapter. 138The PCI adapters come in two flavors: true PCMCIA bridges and 139dumb PCMCIA bridges. 140A true PCMCIA bridge (such as those sold by Lucent) will attach 141as a real PCMCIA controller. 142The wireless card will then attach to the PCMCIA bus. 143Wireless cards in PCMCIA slots may be inserted and ejected on the fly. 144A dumb bridge, on the other hand, does not show up as a true PCMCIA bus. 145The wireless card will simply appear to the host as a normal PCI 146device and will not require any PCMCIA support. 147Cards in this type of adapter should only be removed when the 148machine is powered down. 149.Pp 150The following cards are among those supported by the 151.Nm 152driver: 153.Bl -column "Linksys Instant Wireless WPC11 2.5" "Prism-2.5" "PCMCIA" 154.It Sy Card Ta Sy Chip Ta Sy Bus 155.It 3Com AirConnect 3CRWE737A Ta Spectrum24 Ta PCMCIA 156.It 3Com AirConnect 3CRWE777A Ta Prism-2 Ta PCI 157.It Acer Warplink USB-400 Ta Prism-3 Ta USB 158.It Actiontec HWC01170 Ta Prism-2.5 Ta PCMCIA 159.It Actiontec HWU01170 Ta Prism-3 Ta USB 160.It Adaptec AWN-8030 Ta Prism-2.5 Ta PCMCIA 161.It Addtron AWA-100 Ta Prism-2 Ta PCI 162.It Addtron AWP-100 Ta Prism-2 Ta PCMCIA 163.It Agere ORiNOCO Ta Hermes Ta PCMCIA 164.It AirVast WM168b Ta Prism-3 Ta USB 165.It AmbiCom WL1100C-CF Ta Prism-3 Ta CF 166.It Ambit WLAN Ta Prism-3 Ta USB 167.It Apacer Wireless Steno MB112 Ta Prism-3 Ta USB 168.It Apple Airport Ta Hermes Ta macobio 169.It ARtem Onair Ta Hermes Ta PCMCIA 170.It ASUS SpaceLink WL-100 Ta Prism-2.5 Ta PCMCIA 171.It ASUS SpaceLink WL-110 Ta Prism-2.5 Ta CF 172.It ASUS WL-140 Ta Prism-3 Ta USB 173.It Belkin F5D6020 (version 1 only) Ta Prism-2 Ta PCMCIA 174.It Belkin F5D6001 (version 1 only) Ta Prism-2 Ta PCI 175.It Belkin F5D6060 (version 1 only) Ta Prism-2.5 Ta CF 176.It Buffalo AirStation Ta Prism-2 Ta PCMCIA 177.It Buffalo AirStation Ta Prism-2 Ta CF 178.It Cabletron RoamAbout Ta Hermes Ta PCMCIA 179.It Compaq Agency NC5004 Ta Prism-2 Ta PCMCIA 180.It Compaq W100 Ta Prism-3 Ta USB 181.It Contec FLEXLAN/FX-DS110-PCC Ta Prism-2 Ta PCMCIA 182.It Corega PCC-11 Ta Prism-2 Ta PCMCIA 183.It Corega PCCA-11 Ta Prism-2 Ta PCMCIA 184.It Corega PCCB-11 Ta Prism-2 Ta PCMCIA 185.It Corega CGWLPCIA11 Ta Prism-2 Ta PCI 186.It Corega WLUSB-11 Ta Prism-3 Ta USB 187.It Corega WLUSB-11 Key Ta Prism-3 Ta USB 188.It D-Link DCF-660W Ta Prism-2 Ta CF 189.It D-Link DWL-120 (rev F) Ta Prism-3 Ta USB 190.It D-Link DWL-122 Ta Prism-3 Ta USB 191.It D-Link DWL-520 (rev A and B only) Ta Prism-2.5 Ta PCI 192.It D-Link DWL-650 (rev A1-J3 only) Ta Prism-2.5 Ta PCMCIA 193.It ELSA XI300 Ta Prism-2 Ta PCMCIA 194.It ELSA XI325 Ta Prism-2.5 Ta PCMCIA 195.It ELSA XI325H Ta Prism-2.5 Ta PCMCIA 196.It ELSA XI800 Ta Prism-2 Ta CF 197.It EMTAC A2424i Ta Prism-2 Ta PCMCIA 198.It Ericsson Wireless LAN CARD C11 Ta Spectrum24 Ta PCMCIA 199.It Gemtek WL-311 Ta Prism-2.5 Ta PCMCIA 200.It Hawking Technology WE110P Ta Prism-2.5 Ta PCMCIA 201.It I-O DATA WN-B11/PCM Ta Prism-2 Ta PCMCIA 202.It I-O DATA WN-B11/USB Ta Prism-3 Ta USB 203.It Intel PRO/Wireless 2011 Ta Spectrum24 Ta PCMCIA 204.It Intel PRO/Wireless 2011B Ta Prism-3 Ta USB 205.It Intersil Prism II Ta Prism-2 Ta PCMCIA 206.It Intersil Mini PCI Ta Prism-2.5 Ta PCI 207.It Intersil ISL3872 Ta Prism-3 Ta PCI 208.It Intersil Prism 2X Ta Prism-3 Ta USB 209.It JVC MP-XP7250 Ta Prism-3 Ta USB 210.It Linksys WCF12 Ta Prism-3 Ta CF 211.It Linksys Instant Wireless WPC11 Ta Prism-2 Ta PCMCIA 212.It Linksys Instant Wireless WPC11 2.5 Ta Prism-2.5 Ta PCMCIA 213.It Linksys Instant Wireless WPC11 3.0 Ta Prism-3 Ta PCMCIA 214.It Linksys WUSB11 v3.0 Ta Prism-3 Ta USB 215.It Linksys WUSB12 Ta Prism-3 Ta USB 216.It Longshine 8301 Ta Prism-2 Ta PCI 217.It Lucent WaveLAN Ta Hermes Ta PCMCIA 218.It Melco WLI-USB-KB11 Ta Prism-3 Ta USB 219.It Melco WLI-USB-KS11G Ta Prism-3 Ta USB 220.It Melco WLI-USB-S11 Ta Prism-3 Ta USB 221.It Microsoft MN510 Ta Prism-3 Ta USB 222.It Microsoft MN520 Ta Prism-2.5 Ta PCMCIA 223.It NANOSPEED ROOT-RZ2000 Ta Prism-2 Ta PCMCIA 224.It NDC/Sohoware NCP130 Ta Prism-2 Ta PCI 225.It NEC CMZ-RT-WP Ta Prism-2 Ta PCMCIA 226.It Netgear MA111 (version 1 only) Ta Prism-3 Ta USB 227.It Netgear MA311 Ta Prism-2.5 Ta PCI 228.It Netgear MA401 Ta Prism-2 Ta PCMCIA 229.It Netgear MA401RA Ta Prism-2.5 Ta PCMCIA 230.It Netgear MA701 Ta Prism-2.5 Ta CF 231.It Nokia C020 Wireless LAN Ta Prism-I Ta PCMCIA 232.It Nokia C110/C111 Wireless LAN Ta Prism-2 Ta PCMCIA 233.It Nortel E-mobility 211818-A Ta Spectrum24 Ta PCI 234.It NTT-ME 11Mbps Wireless LAN Ta Prism-2 Ta PCMCIA 235.It Pheenet WL-503IA Ta Prism-3 Ta USB 236.It Planex GW-NS11H Ta Prism-3 Ta PCMCIA 237.It Planex GW-US11H Ta Prism-3 Ta USB 238.It Pretec Compact WLAN OC-WLBXX-A Ta Prism-2.5 Ta CF 239.It Proxim Harmony Ta Prism-2 Ta PCMCIA 240.It Proxim RangeLAN-DS Ta Prism-2 Ta PCMCIA 241.It Samsung MagicLAN SWL-2000N Ta Prism-2 Ta PCMCIA 242.It Samsung MagicLAN SWL-2210P Ta Prism-2 Ta PCI 243.It Senao NL-2511CF Ta Prism-3 Ta CF 244.It Senao NL-2511MP Ta Prism-2.5 Ta PCI 245.It Siemens SpeedStream SS1021 Ta Prism-2 Ta PCMCIA 246.It Siemens SpeedStream SS1022 Ta Prism-3 Ta USB 247.It Sitecom WL-022 Ta Prism-3 Ta USB 248.It SMC 2632 EZ Connect Ta Prism-2 Ta PCMCIA 249.It Symbol Spectrum24 Ta Spectrum24 Ta PCMCIA 250.It Symbol LA4123 Ta Spectrum24 Ta PCI 251.It Syntax USB-400 Ta Prism-3 Ta USB 252.It TDK LAK-CD011WL Ta Prism-2 Ta PCMCIA 253.It US Robotics 1120 Ta Prism-3 Ta USB 254.It US Robotics 2410 Ta Prism-2 Ta PCMCIA 255.It US Robotics 2445 Ta Prism-2 Ta PCMCIA 256.It ViewSonic Airsync Ta Prism-2.5 Ta USB 257.It Z-Com XI-725/726 Ta Prism-2.5 Ta USB 258.It Z-Com XI-735 Ta Prism-3 Ta USB 259.It ZyXEL ZyAIR B-200 Ta Prism-3 Ta USB 260.El 261.Pp 262Note that some of the PRISM-II adapters only work at 3.3V, hence 263.Xr cardbus 4 264support is required for those cards to set VCC correctly, even 265though they are really 16-bit cards. 266.Pp 267USB support is still experimental and the device may stop functioning 268during normal use. 269Resetting the device by configuring the interface down and back up again will 270normally reactivate it. 271.Pp 272Several vendors sell PCI adapters built around the PLX Technology 9050 273or 9052 chip. 274The following such adapters are supported or expected to work: 275.Pp 276.Bl -tag -width Ds -offset indent -compact 277.It 3Com AirConnect 3CRWE777A (3.3V) 278.It Addtron AWA-100 279.It Belkin F5D6000 (a rebadged WL11000P) 280.It Eumitcom WL11000P 281.It Global Sun Technology GL24110P (untested) 282.It Global Sun Technology GL24110P02 283.It Linksys WDT11 (a rebadged GL24110P02) 284.It Longshine 8031 285.It Netgear MA301 286.It Siemens/Efficient Networks SpeedStream 1023 287.It US Robotics 2415 (rebadged WL11000P) 288.El 289.Sh EXAMPLES 290The following example scans for available networks: 291.Pp 292.Dl # ifconfig wi0 scan 293.Pp 294The following 295.Xr hostname.if 5 296example configures wi0 to join network 297.Dq mynwid , 298using WEP key 299.Dq mywepkey , 300obtaining an IP address using DHCP: 301.Bd -literal -offset indent 302nwid mynwid nwkey mywepkey 303inet autoconf 304.Ed 305.Pp 306The following 307.Xr hostname.if 5 308example creates a host-based access point on boot: 309.Bd -literal -offset indent 310inet 192.168.1.1 255.255.255.0 311mediaopt hostap 312nwid mynwid nwkey mywepkey 313.Ed 314.Sh DIAGNOSTICS 315.Bl -diag 316.It "wi0: init failed" 317The WaveLAN card failed to come ready after an initialization command 318was issued. 319.It "wi0: failed to allocate N bytes on NIC" 320The driver was unable to allocate memory for transmit frames in the 321NIC's on-board RAM. 322.It "wi0: device timeout" 323The WaveLAN failed to generate an interrupt to acknowledge a transmit 324command. 325.El 326.Sh SEE ALSO 327.Xr arp 4 , 328.Xr ifmedia 4 , 329.Xr intro 4 , 330.Xr netintro 4 , 331.Xr pci 4 , 332.Xr pcmcia 4 , 333.Xr usb 4 , 334.Xr hostname.if 5 , 335.Xr ifconfig 8 336.Rs 337.%T HCF Light programming specification 338.Re 339.Sh HISTORY 340The 341.Nm 342device driver first appeared in 343.Fx 3.0 . 344.Ox 345support was added in 346.Ox 2.6 . 347.Sh AUTHORS 348.An -nosplit 349The 350.Nm 351driver was written by 352.An Bill Paul Aq Mt wpaul@ctr.columbia.edu 353and ported to 354.Ox 355by 356.An Niklas Hallqvist Aq Mt niklas@appli.se . 357.Sh CAVEATS 358The original Lucent WaveLAN cards usually default to channel 3; 359newer cards use channel 10 by default. 360Non-Lucent cards vary, for instance the Addtron cards use channel 36111 by default. 362See 363.Xr ifconfig 8 364for information on how to change the channel. 365.Pp 366Not all 3.3V 367.Nm 368PCMCIA cards work. 369.Pp 370IBSS creation does not currently work with Symbol cards. 371.Pp 372The host-based access point mode on the Intersil PRISM cards has 373bugs when used with firmware versions prior to 0.8.3 and is completely 374unusable with firmware versions prior to 0.8.0 and 1.4.0-1.4.2. 375.Pp 376Software WEP is currently only supported in Host AP and BSS modes. 377Furthermore, software WEP is currently incapable of decrypting 378fragmented frames. 379Lucent-based cards using firmware 8.10 and above fragment encrypted 380frames sent at 11Mbps. 381To work around this, Lucent clients with this firmware revision 382connecting to a Host AP server should use a 2Mbps connection or 383upgrade their firmware to version 8.72. 384.Pp 385Host AP mode doesn't support WDS. 386.Pp 387Support for USB devices is buggy. 388Host AP mode and AP scanning are not currently supported with USB devices. 389.Pp 390This driver does not support powersave mode. 391