1dc4815c0SBenjamin Close.\" Copyright (c) 2004-2007 2dc4815c0SBenjamin Close.\" Damien Bergamini <damien.bergamini@free.fr>. All rights reserved. 3dc4815c0SBenjamin Close.\" Benjamin Close <Benjamin.Close@clearchain.com>. All rights reserved. 4*9a5e3bffSAndriy Voskoboinyk.\" Copyright (c) 2016 Andriy Voskoboinyk <avos@FreeBSD.org> 5*9a5e3bffSAndriy Voskoboinyk.\" All rights reserved. 6dc4815c0SBenjamin Close.\" 7dc4815c0SBenjamin Close.\" Redistribution and use in source and binary forms, with or without 8dc4815c0SBenjamin Close.\" modification, are permitted provided that the following conditions 9dc4815c0SBenjamin Close.\" are met: 10dc4815c0SBenjamin Close.\" 1. Redistributions of source code must retain the above copyright 11dc4815c0SBenjamin Close.\" notice unmodified, this list of conditions, and the following 12dc4815c0SBenjamin Close.\" disclaimer. 13dc4815c0SBenjamin Close.\" 2. Redistributions in binary form must reproduce the above copyright 14dc4815c0SBenjamin Close.\" notice, this list of conditions and the following disclaimer in the 15dc4815c0SBenjamin Close.\" documentation and/or other materials provided with the distribution. 16dc4815c0SBenjamin Close.\" 17dc4815c0SBenjamin Close.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND 18dc4815c0SBenjamin Close.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 19dc4815c0SBenjamin Close.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 20dc4815c0SBenjamin Close.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE 21dc4815c0SBenjamin Close.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 22dc4815c0SBenjamin Close.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 23dc4815c0SBenjamin Close.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 24dc4815c0SBenjamin Close.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 25dc4815c0SBenjamin Close.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 26dc4815c0SBenjamin Close.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 27dc4815c0SBenjamin Close.\" SUCH DAMAGE. 28dc4815c0SBenjamin Close.\" 29dc4815c0SBenjamin Close.\" $FreeBSD$ 30dc4815c0SBenjamin Close.\" 31*9a5e3bffSAndriy Voskoboinyk.Dd January 31, 2016 32dc4815c0SBenjamin Close.Dt WPI 4 33aa12cea2SUlrich Spörlein.Os 34dc4815c0SBenjamin Close.Sh NAME 35dc4815c0SBenjamin Close.Nm wpi 36dc4815c0SBenjamin Close.Nd "Intel 3945ABG Wireless LAN IEEE 802.11 driver" 37dc4815c0SBenjamin Close.Sh SYNOPSIS 38dc4815c0SBenjamin CloseTo compile this driver into the kernel, 39dc4815c0SBenjamin Closeplace the following lines in your 40dc4815c0SBenjamin Closekernel configuration file: 41dc4815c0SBenjamin Close.Bd -ragged -offset indent 42dc4815c0SBenjamin Close.Cd "device wpi" 43b032f27cSSam Leffler.Cd "device wpifw" 44dc4815c0SBenjamin Close.Cd "device pci" 45dc4815c0SBenjamin Close.Cd "device wlan" 46b5ad081cSBenjamin Close.Cd "device wlan_amrr" 47dc4815c0SBenjamin Close.Cd "device firmware" 48dc4815c0SBenjamin Close.Ed 49dc4815c0SBenjamin Close.Pp 50dc4815c0SBenjamin CloseAlternatively, to load the driver as a 51b032f27cSSam Lefflermodule at boot time, place the following line in 52dc4815c0SBenjamin Close.Xr loader.conf 5 : 53dc4815c0SBenjamin Close.Bd -literal -offset indent 54dc4815c0SBenjamin Closeif_wpi_load="YES" 55dc4815c0SBenjamin Close.Ed 56dc4815c0SBenjamin Close.Sh DESCRIPTION 57dc4815c0SBenjamin CloseThe 58dc4815c0SBenjamin Close.Nm 59b032f27cSSam Lefflerdriver provides support for the 60dc4815c0SBenjamin Close.Tn Intel 6150d922a0SGlen Barber3945ABG Wireless network adapter. 62*9a5e3bffSAndriy VoskoboinykThe driver supports 63b032f27cSSam Leffler.Cm station , 64b032f27cSSam Leffler.Cm adhoc , 65*9a5e3bffSAndriy Voskoboinyk.Cm adhoc-demo , 66*9a5e3bffSAndriy Voskoboinyk.Cm hostap , 67b032f27cSSam Lefflerand 68b032f27cSSam Leffler.Cm monitor 69b032f27cSSam Lefflermode operation. 70b032f27cSSam LefflerOnly one virtual interface may be configured at any time. 71*9a5e3bffSAndriy Voskoboinyk.Pp 72*9a5e3bffSAndriy VoskoboinykThe 73*9a5e3bffSAndriy Voskoboinyk.Nm 74*9a5e3bffSAndriy Voskoboinykdriver can be configured to use 75*9a5e3bffSAndriy VoskoboinykWired Equivalent Privacy (WEP) or 76*9a5e3bffSAndriy VoskoboinykWi-Fi Protected Access (WPA-PSK and WPA2-PSK). 77*9a5e3bffSAndriy VoskoboinykWPA is the de facto encryption standard for wireless networks. 78*9a5e3bffSAndriy VoskoboinykIt is strongly recommended that WEP 79*9a5e3bffSAndriy Voskoboinyknot be used as the sole mechanism 80*9a5e3bffSAndriy Voskoboinykto secure wireless communication, 81*9a5e3bffSAndriy Voskoboinykdue to serious weaknesses in it. 82*9a5e3bffSAndriy VoskoboinykThe 83*9a5e3bffSAndriy Voskoboinyk.Nm 84*9a5e3bffSAndriy Voskoboinykdriver offloads both encryption and decryption of data frames to the 85*9a5e3bffSAndriy Voskoboinykhardware for the CCMP cipher. 86dc4815c0SBenjamin Close.Pp 87b032f27cSSam LefflerThis driver requires the firmware built with the 88b032f27cSSam Leffler.Nm wpifw 89b032f27cSSam Lefflermodule to work. 90*9a5e3bffSAndriy Voskoboinyk.Pp 91*9a5e3bffSAndriy VoskoboinykThe 92*9a5e3bffSAndriy Voskoboinyk.Nm 93*9a5e3bffSAndriy Voskoboinykdriver can be configured at runtime with 94*9a5e3bffSAndriy Voskoboinyk.Xr ifconfig 8 . 95dc4815c0SBenjamin Close.Sh FILES 96cada39d8SBryan Drewery.Bl -tag -width ".Pa /usr/share/doc/legal/intel_wpi.LICENSE" -compact 97cada39d8SBryan Drewery.It Pa /usr/share/doc/legal/intel_wpi.LICENSE 98dc4815c0SBenjamin Close.Nm 99dc4815c0SBenjamin Closefirmware license 100dc4815c0SBenjamin Close.El 101dc4815c0SBenjamin Close.Sh EXAMPLES 102dc4815c0SBenjamin CloseJoin an existing BSS network (i.e., connect to an access point): 103b032f27cSSam Leffler.Bd -literal -offset indent 1043e460b60SGleb Smirnoffifconfig wlan0 create wlandev wpi0 inet 192.168.0.20 \e 105b032f27cSSam Leffler netmask 0xffffff00 106b032f27cSSam Leffler.Ed 107dc4815c0SBenjamin Close.Pp 108dc4815c0SBenjamin CloseJoin a specific BSS network with network name 109dc4815c0SBenjamin Close.Dq Li my_net : 110dc4815c0SBenjamin Close.Pp 1113e460b60SGleb Smirnoff.Dl "ifconfig wlan0 create wlandev wpi0 ssid my_net up" 112dc4815c0SBenjamin Close.Pp 113b032f27cSSam LefflerJoin a specific BSS network with 64-bit WEP encryption: 114dc4815c0SBenjamin Close.Bd -literal -offset indent 1153e460b60SGleb Smirnoffifconfig wlan0 create wlandev wpi0 ssid my_net \e 116b032f27cSSam Leffler wepmode on wepkey 0x1234567890 weptxkey 1 up 117dc4815c0SBenjamin Close.Ed 118dc4815c0SBenjamin Close.Pp 119*9a5e3bffSAndriy VoskoboinykCreate an IBSS network with 128-bit WEP encryption on the channel 4: 120dc4815c0SBenjamin Close.Bd -literal -offset indent 1213e460b60SGleb Smirnoffifconfig wlan0 create wlandev wpi0 wlanmode adhoc ssid my_net \e 122*9a5e3bffSAndriy Voskoboinyk wepmode on wepkey 0x01020304050607080910111213 weptxkey 1 \e 123*9a5e3bffSAndriy Voskoboinyk channel 4 124*9a5e3bffSAndriy Voskoboinyk.Ed 125*9a5e3bffSAndriy Voskoboinyk.Pp 126*9a5e3bffSAndriy VoskoboinykJoin/create an 802.11b IBSS network with network name 127*9a5e3bffSAndriy Voskoboinyk.Dq Li my_net : 128*9a5e3bffSAndriy Voskoboinyk.Bd -literal -offset indent 129*9a5e3bffSAndriy Voskoboinykifconfig wlan0 create wlandev wpi0 wlanmode adhoc 130*9a5e3bffSAndriy Voskoboinykifconfig wlan0 inet 192.168.0.22 netmask 0xffffff00 ssid my_net \e 131*9a5e3bffSAndriy Voskoboinyk mode 11b 132*9a5e3bffSAndriy Voskoboinyk.Ed 133*9a5e3bffSAndriy Voskoboinyk.Pp 134*9a5e3bffSAndriy VoskoboinykCreate an 802.11g host-based access point: 135*9a5e3bffSAndriy Voskoboinyk.Bd -literal -offset indent 136*9a5e3bffSAndriy Voskoboinykifconfig wlan0 create wlandev wpi0 wlanmode hostap 137*9a5e3bffSAndriy Voskoboinykifconfig wlan0 inet 192.168.0.10 netmask 0xffffff00 ssid my_ap \e 138*9a5e3bffSAndriy Voskoboinyk mode 11g 139dc4815c0SBenjamin Close.Ed 140dc4815c0SBenjamin Close.Sh DIAGNOSTICS 141dc4815c0SBenjamin Close.Bl -diag 142b032f27cSSam Leffler.It "wpi%d: could not load firmware image '%s'" 143b032f27cSSam LefflerThe driver failed to load the firmware image using the 144dc4815c0SBenjamin Close.Xr firmware 9 145dc4815c0SBenjamin Closesubsystem. 146b032f27cSSam LefflerVerify the 147b032f27cSSam Leffler.Xr wpifw 14877a62bf5SSam Lefflerfirmware module is installed. 149*9a5e3bffSAndriy Voskoboinyk.It "wpi%d: %s: timeout waiting for adapter to initialize, error %d" 150*9a5e3bffSAndriy VoskoboinykThe onboard microcontroller failed to initialize in time. 151*9a5e3bffSAndriy VoskoboinykThis should not happen. 152*9a5e3bffSAndriy Voskoboinyk.It "wpi%d: %s: could not load boot firmware" 153*9a5e3bffSAndriy VoskoboinykAn attempt to upload the boot firmware image to the onboard microcontroller 154*9a5e3bffSAndriy Voskoboinykfailed. 155*9a5e3bffSAndriy VoskoboinykThis should not happen. 156*9a5e3bffSAndriy Voskoboinyk.It "wpi%d: device timeout" 157*9a5e3bffSAndriy VoskoboinykA frame dispatched to the hardware for transmission did not complete in time. 158*9a5e3bffSAndriy VoskoboinykThe driver will reset the hardware and continue. 159*9a5e3bffSAndriy VoskoboinykThis should not happen. 160*9a5e3bffSAndriy Voskoboinyk.It "wpi%d: scan timeout" 161*9a5e3bffSAndriy VoskoboinykFirmware scan command response was not received in time. 162*9a5e3bffSAndriy VoskoboinykThe driver will reset the hardware and continue. 163*9a5e3bffSAndriy VoskoboinykThis should not happen. 164dc4815c0SBenjamin Close.It "wpi%d: fatal firmware error" 165*9a5e3bffSAndriy VoskoboinykThe onboard microcontroller crashed for some reason. 166*9a5e3bffSAndriy VoskoboinykThe driver will reset the hardware and continue. 167*9a5e3bffSAndriy VoskoboinykThis should not happen. 168*9a5e3bffSAndriy Voskoboinyk.It "wpi%d: RF switch: radio disabled" 169dc4815c0SBenjamin CloseThe hardware switch controlling the radio is currently turned off. 1709920732cSChristian BruefferData transmission is not possible in this state. 171*9a5e3bffSAndriy Voskoboinyk.It "wpi%d: can't map mem space" 172*9a5e3bffSAndriy VoskoboinykThe driver was unable to map the device registers into the host address space. 173*9a5e3bffSAndriy VoskoboinykThis should not happen. 174*9a5e3bffSAndriy Voskoboinyk.It "wpi%d: can't map interrupt" 175*9a5e3bffSAndriy VoskoboinykThe driver was unable to allocate an IRQ for the device interrupt. 176*9a5e3bffSAndriy VoskoboinykThis should not happen. 177*9a5e3bffSAndriy Voskoboinyk.It "wpi%d: can't establish interrupt, error %d" 178*9a5e3bffSAndriy VoskoboinykThe driver was unable to install the device interrupt handler. 179*9a5e3bffSAndriy VoskoboinykThis should not happen. 180*9a5e3bffSAndriy Voskoboinyk.It "wpi%d: %s: bus_dmamap_load failed, error %d" 181*9a5e3bffSAndriy VoskoboinykThe driver was unable to map newly allocated mbuf to device 182*9a5e3bffSAndriy Voskoboinykvisible address space. 183*9a5e3bffSAndriy VoskoboinykContents of currently received frame will be lost. 184*9a5e3bffSAndriy VoskoboinykThis should not happen. 185e7d6c4e7SChristian Brueffer.El 186dc4815c0SBenjamin Close.Sh SEE ALSO 187dc4815c0SBenjamin Close.Xr pci 4 , 188dc4815c0SBenjamin Close.Xr wlan 4 , 189*9a5e3bffSAndriy Voskoboinyk.Xr wlan_amrr 4 , 190b032f27cSSam Leffler.Xr wlan_ccmp 4 , 191b032f27cSSam Leffler.Xr wlan_tkip 4 , 192b032f27cSSam Leffler.Xr wlan_wep 4 , 193*9a5e3bffSAndriy Voskoboinyk.Xr wlan_xauth 4 , 1940b3504fdSChristian Brueffer.Xr wpifw 4 , 195*9a5e3bffSAndriy Voskoboinyk.Xr hostapd 8 , 196b032f27cSSam Leffler.Xr ifconfig 8 , 19750d922a0SGlen Barber.Xr wpa_supplicant 8 198dc4815c0SBenjamin Close.Sh AUTHORS 1999920732cSChristian Brueffer.An -nosplit 200b032f27cSSam LefflerThe original 201dc4815c0SBenjamin Close.Nm 202b032f27cSSam Lefflerdriver was written for 203b032f27cSSam Leffler.Ox 204b032f27cSSam Lefflerby 2056c899950SBaptiste Daroussin.An Damien Bergamini Aq Mt damien.bergamini@free.fr . 2066c899950SBaptiste Daroussin.An Benjamin Close Aq Mt benjsc@FreeBSD.org 207b032f27cSSam Lefflerported 208b032f27cSSam Leffler.Nm 209b032f27cSSam Lefflerto 210b032f27cSSam Leffler.Fx . 211*9a5e3bffSAndriy Voskoboinyk.Sh CAVEATS 212*9a5e3bffSAndriy VoskoboinykHostap mode is not directly supported by the device; 213*9a5e3bffSAndriy Voskoboinykit is implemented through IBSS mode (as a result, DFS/passive 214*9a5e3bffSAndriy Voskoboinykchannels are not available in this mode). 2150afc94c1SUlrich Spörlein.Pp 216*9a5e3bffSAndriy VoskoboinykPowersave may be unstable on some networks (results in 217*9a5e3bffSAndriy Voskoboinykoccasional 'wpi%d: device timeout' messages); you can try 218*9a5e3bffSAndriy Voskoboinykto disable it to improve device stability. 219