xref: /freebsd/share/man/man4/wpi.4 (revision fa573868f187956b384722a90392866769f4965a)
1*fa573868SAlexander Ziaee.\"-
2*fa573868SAlexander Ziaee.\" SPDX-License-Identifier: BSD-2-Clause
3*fa573868SAlexander Ziaee.\"
4dc4815c0SBenjamin Close.\" Copyright (c) 2004-2007
5dc4815c0SBenjamin Close.\"	Damien Bergamini <damien.bergamini@free.fr>. All rights reserved.
6dc4815c0SBenjamin Close.\"	Benjamin Close <Benjamin.Close@clearchain.com>. All rights reserved.
79a5e3bffSAndriy Voskoboinyk.\" Copyright (c) 2016 Andriy Voskoboinyk <avos@FreeBSD.org>
89a5e3bffSAndriy Voskoboinyk.\" All rights reserved.
9dc4815c0SBenjamin Close.\"
10dc4815c0SBenjamin Close.\" Redistribution and use in source and binary forms, with or without
11dc4815c0SBenjamin Close.\" modification, are permitted provided that the following conditions
12dc4815c0SBenjamin Close.\" are met:
13dc4815c0SBenjamin Close.\" 1. Redistributions of source code must retain the above copyright
14dc4815c0SBenjamin Close.\"    notice unmodified, this list of conditions, and the following
15dc4815c0SBenjamin Close.\"    disclaimer.
16dc4815c0SBenjamin Close.\" 2. Redistributions in binary form must reproduce the above copyright
17dc4815c0SBenjamin Close.\"    notice, this list of conditions and the following disclaimer in the
18dc4815c0SBenjamin Close.\"    documentation and/or other materials provided with the distribution.
19dc4815c0SBenjamin Close.\"
20dc4815c0SBenjamin Close.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
21dc4815c0SBenjamin Close.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
22dc4815c0SBenjamin Close.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
23dc4815c0SBenjamin Close.\" ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
24dc4815c0SBenjamin Close.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
25dc4815c0SBenjamin Close.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
26dc4815c0SBenjamin Close.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
27dc4815c0SBenjamin Close.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
28dc4815c0SBenjamin Close.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
29dc4815c0SBenjamin Close.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
30dc4815c0SBenjamin Close.\" SUCH DAMAGE.
31dc4815c0SBenjamin Close.\"
32*fa573868SAlexander Ziaee.Dd October 17, 2024
33dc4815c0SBenjamin Close.Dt WPI 4
34aa12cea2SUlrich Spörlein.Os
35dc4815c0SBenjamin Close.Sh NAME
36dc4815c0SBenjamin Close.Nm wpi
37*fa573868SAlexander Ziaee.Nd Intel PRO/Wireless 3945ABG IEEE 802.11a/b/g network driver
38dc4815c0SBenjamin Close.Sh SYNOPSIS
39dc4815c0SBenjamin CloseTo compile this driver into the kernel,
40dc4815c0SBenjamin Closeplace the following lines in your
41dc4815c0SBenjamin Closekernel configuration file:
42dc4815c0SBenjamin Close.Bd -ragged -offset indent
43dc4815c0SBenjamin Close.Cd "device wpi"
44b032f27cSSam Leffler.Cd "device wpifw"
45dc4815c0SBenjamin Close.Cd "device pci"
46dc4815c0SBenjamin Close.Cd "device wlan"
47b5ad081cSBenjamin Close.Cd "device wlan_amrr"
48dc4815c0SBenjamin Close.Cd "device firmware"
49dc4815c0SBenjamin Close.Ed
50dc4815c0SBenjamin Close.Pp
51dc4815c0SBenjamin CloseAlternatively, to load the driver as a
52b032f27cSSam Lefflermodule at boot time, place the following line in
53dc4815c0SBenjamin Close.Xr loader.conf 5 :
54*fa573868SAlexander Ziaee.Pp
55*fa573868SAlexander Ziaee.Dl if_wpi_load="YES"
56dc4815c0SBenjamin Close.Sh DESCRIPTION
57dc4815c0SBenjamin CloseThe
58dc4815c0SBenjamin Close.Nm
59*fa573868SAlexander Ziaeedriver supports running the
60*fa573868SAlexander ZiaeeIntel PRO/Wireless 3945ABG network adapter in
61b032f27cSSam Leffler.Cm station ,
62b032f27cSSam Leffler.Cm adhoc ,
639a5e3bffSAndriy Voskoboinyk.Cm adhoc-demo ,
649a5e3bffSAndriy Voskoboinyk.Cm hostap ,
65b032f27cSSam Lefflerand
66b032f27cSSam Leffler.Cm monitor
67b032f27cSSam Lefflermode operation.
68*fa573868SAlexander ZiaeeThis driver requires the wpifw firmware module
69*fa573868SAlexander Ziaeeand can be configured at runtime with
70*fa573868SAlexander Ziaee.Xr ifconfig 8
71*fa573868SAlexander Ziaeeor at boot in
72*fa573868SAlexander Ziaee.Xr rc.conf 5 .
73b032f27cSSam LefflerOnly one virtual interface may be configured at any time.
749a5e3bffSAndriy Voskoboinyk.Pp
759a5e3bffSAndriy VoskoboinykThe
769a5e3bffSAndriy Voskoboinyk.Nm
779a5e3bffSAndriy Voskoboinykdriver can be configured to use
789a5e3bffSAndriy VoskoboinykWired Equivalent Privacy (WEP) or
799a5e3bffSAndriy VoskoboinykWi-Fi Protected Access (WPA-PSK and WPA2-PSK).
809a5e3bffSAndriy VoskoboinykWPA is the de facto encryption standard for wireless networks.
819a5e3bffSAndriy VoskoboinykIt is strongly recommended that WEP
829a5e3bffSAndriy Voskoboinyknot be used as the sole mechanism
839a5e3bffSAndriy Voskoboinykto secure wireless communication,
849a5e3bffSAndriy Voskoboinykdue to serious weaknesses in it.
859a5e3bffSAndriy VoskoboinykThe
869a5e3bffSAndriy Voskoboinyk.Nm
879a5e3bffSAndriy Voskoboinykdriver offloads both encryption and decryption of data frames to the
889a5e3bffSAndriy Voskoboinykhardware for the CCMP cipher.
89*fa573868SAlexander Ziaee.Sh HARDWARE
909a5e3bffSAndriy VoskoboinykThe
919a5e3bffSAndriy Voskoboinyk.Nm
92*fa573868SAlexander Ziaeedriver provides support for the
93*fa573868SAlexander ZiaeeIntel PRO/Wireless 3945ABG Mini PCIe network adapter.
94dc4815c0SBenjamin Close.Sh FILES
95*fa573868SAlexander Ziaee.Bl -tag -width "/usr/share/doc/legal/intel_wpi.LICENSE" -compact
96cada39d8SBryan Drewery.It Pa /usr/share/doc/legal/intel_wpi.LICENSE
97dc4815c0SBenjamin Close.Nm
98dc4815c0SBenjamin Closefirmware license
99dc4815c0SBenjamin Close.El
100dc4815c0SBenjamin Close.Sh EXAMPLES
101dc4815c0SBenjamin CloseJoin an existing BSS network (i.e., connect to an access point):
102b032f27cSSam Leffler.Bd -literal -offset indent
1033e460b60SGleb Smirnoffifconfig wlan0 create wlandev wpi0 inet 192.168.0.20 \e
104b032f27cSSam Leffler    netmask 0xffffff00
105b032f27cSSam Leffler.Ed
106dc4815c0SBenjamin Close.Pp
107dc4815c0SBenjamin CloseJoin a specific BSS network with network name
108*fa573868SAlexander Ziaee.Ar my_net :
109dc4815c0SBenjamin Close.Pp
1103e460b60SGleb Smirnoff.Dl "ifconfig wlan0 create wlandev wpi0 ssid my_net up"
111dc4815c0SBenjamin Close.Pp
112b032f27cSSam LefflerJoin a specific BSS network with 64-bit WEP encryption:
113dc4815c0SBenjamin Close.Bd -literal -offset indent
1143e460b60SGleb Smirnoffifconfig wlan0 create wlandev wpi0 ssid my_net \e
115b032f27cSSam Leffler	wepmode on wepkey 0x1234567890 weptxkey 1 up
116dc4815c0SBenjamin Close.Ed
117dc4815c0SBenjamin Close.Pp
1189a5e3bffSAndriy VoskoboinykCreate an IBSS network with 128-bit WEP encryption on the channel 4:
119dc4815c0SBenjamin Close.Bd -literal -offset indent
1203e460b60SGleb Smirnoffifconfig wlan0 create wlandev wpi0 wlanmode adhoc ssid my_net \e
1219a5e3bffSAndriy Voskoboinyk	wepmode on wepkey 0x01020304050607080910111213 weptxkey 1 \e
1229a5e3bffSAndriy Voskoboinyk	channel 4
1239a5e3bffSAndriy Voskoboinyk.Ed
1249a5e3bffSAndriy Voskoboinyk.Pp
1259a5e3bffSAndriy VoskoboinykJoin/create an 802.11b IBSS network with network name
126*fa573868SAlexander Ziaee.Ar my_net :
1279a5e3bffSAndriy Voskoboinyk.Bd -literal -offset indent
1289a5e3bffSAndriy Voskoboinykifconfig wlan0 create wlandev wpi0 wlanmode adhoc
1299a5e3bffSAndriy Voskoboinykifconfig wlan0 inet 192.168.0.22 netmask 0xffffff00 ssid my_net \e
1309a5e3bffSAndriy Voskoboinyk	mode 11b
1319a5e3bffSAndriy Voskoboinyk.Ed
1329a5e3bffSAndriy Voskoboinyk.Pp
1339a5e3bffSAndriy VoskoboinykCreate an 802.11g host-based access point:
1349a5e3bffSAndriy Voskoboinyk.Bd -literal -offset indent
1359a5e3bffSAndriy Voskoboinykifconfig wlan0 create wlandev wpi0 wlanmode hostap
1369a5e3bffSAndriy Voskoboinykifconfig wlan0 inet 192.168.0.10 netmask 0xffffff00 ssid my_ap \e
1379a5e3bffSAndriy Voskoboinyk	mode 11g
138dc4815c0SBenjamin Close.Ed
139dc4815c0SBenjamin Close.Sh DIAGNOSTICS
140dc4815c0SBenjamin Close.Bl -diag
141b032f27cSSam Leffler.It "wpi%d: could not load firmware image '%s'"
142b032f27cSSam LefflerThe driver failed to load the firmware image using the
143dc4815c0SBenjamin Close.Xr firmware 9
144dc4815c0SBenjamin Closesubsystem.
145*fa573868SAlexander ZiaeeVerify the wpifw firmware module is installed.
1469a5e3bffSAndriy Voskoboinyk.It "wpi%d: %s: timeout waiting for adapter to initialize, error %d"
1479a5e3bffSAndriy VoskoboinykThe onboard microcontroller failed to initialize in time.
1489a5e3bffSAndriy VoskoboinykThis should not happen.
1499a5e3bffSAndriy Voskoboinyk.It "wpi%d: %s: could not load boot firmware"
1509a5e3bffSAndriy VoskoboinykAn attempt to upload the boot firmware image to the onboard microcontroller
1519a5e3bffSAndriy Voskoboinykfailed.
1529a5e3bffSAndriy VoskoboinykThis should not happen.
1539a5e3bffSAndriy Voskoboinyk.It "wpi%d: device timeout"
1549a5e3bffSAndriy VoskoboinykA frame dispatched to the hardware for transmission did not complete in time.
1559a5e3bffSAndriy VoskoboinykThe driver will reset the hardware and continue.
1569a5e3bffSAndriy VoskoboinykThis should not happen.
1579a5e3bffSAndriy Voskoboinyk.It "wpi%d: scan timeout"
1589a5e3bffSAndriy VoskoboinykFirmware scan command response was not received in time.
1599a5e3bffSAndriy VoskoboinykThe driver will reset the hardware and continue.
1609a5e3bffSAndriy VoskoboinykThis should not happen.
161dc4815c0SBenjamin Close.It "wpi%d: fatal firmware error"
1629a5e3bffSAndriy VoskoboinykThe onboard microcontroller crashed for some reason.
1639a5e3bffSAndriy VoskoboinykThe driver will reset the hardware and continue.
1649a5e3bffSAndriy VoskoboinykThis should not happen.
1659a5e3bffSAndriy Voskoboinyk.It "wpi%d: RF switch: radio disabled"
166dc4815c0SBenjamin CloseThe hardware switch controlling the radio is currently turned off.
1679920732cSChristian BruefferData transmission is not possible in this state.
1689a5e3bffSAndriy Voskoboinyk.It "wpi%d: can't map mem space"
1699a5e3bffSAndriy VoskoboinykThe driver was unable to map the device registers into the host address space.
1709a5e3bffSAndriy VoskoboinykThis should not happen.
1719a5e3bffSAndriy Voskoboinyk.It "wpi%d: can't map interrupt"
1729a5e3bffSAndriy VoskoboinykThe driver was unable to allocate an IRQ for the device interrupt.
1739a5e3bffSAndriy VoskoboinykThis should not happen.
1749a5e3bffSAndriy Voskoboinyk.It "wpi%d: can't establish interrupt, error %d"
1759a5e3bffSAndriy VoskoboinykThe driver was unable to install the device interrupt handler.
1769a5e3bffSAndriy VoskoboinykThis should not happen.
1779a5e3bffSAndriy Voskoboinyk.It "wpi%d: %s: bus_dmamap_load failed, error %d"
1789a5e3bffSAndriy VoskoboinykThe driver was unable to map newly allocated mbuf to device
1799a5e3bffSAndriy Voskoboinykvisible address space.
1809a5e3bffSAndriy VoskoboinykContents of currently received frame will be lost.
1819a5e3bffSAndriy VoskoboinykThis should not happen.
182e7d6c4e7SChristian Brueffer.El
183dc4815c0SBenjamin Close.Sh SEE ALSO
184dc4815c0SBenjamin Close.Xr pci 4 ,
185dc4815c0SBenjamin Close.Xr wlan 4 ,
1869a5e3bffSAndriy Voskoboinyk.Xr wlan_amrr 4 ,
187b032f27cSSam Leffler.Xr wlan_ccmp 4 ,
188b032f27cSSam Leffler.Xr wlan_tkip 4 ,
189b032f27cSSam Leffler.Xr wlan_wep 4 ,
1909a5e3bffSAndriy Voskoboinyk.Xr wlan_xauth 4 ,
191*fa573868SAlexander Ziaee.Xr networking 7 ,
1929a5e3bffSAndriy Voskoboinyk.Xr hostapd 8 ,
193b032f27cSSam Leffler.Xr ifconfig 8 ,
19450d922a0SGlen Barber.Xr wpa_supplicant 8
195dc4815c0SBenjamin Close.Sh AUTHORS
1969920732cSChristian Brueffer.An -nosplit
197b032f27cSSam LefflerThe original
198dc4815c0SBenjamin Close.Nm
199b032f27cSSam Lefflerdriver was written for
200b032f27cSSam Leffler.Ox
201b032f27cSSam Lefflerby
2026c899950SBaptiste Daroussin.An Damien Bergamini Aq Mt damien.bergamini@free.fr .
2036c899950SBaptiste Daroussin.An Benjamin Close Aq Mt benjsc@FreeBSD.org
204b032f27cSSam Lefflerported
205b032f27cSSam Leffler.Nm
206b032f27cSSam Lefflerto
207b032f27cSSam Leffler.Fx .
2089a5e3bffSAndriy Voskoboinyk.Sh CAVEATS
209*fa573868SAlexander Ziaee.Cm Hostap
210*fa573868SAlexander Ziaeemode is not directly supported by the device;
2119a5e3bffSAndriy Voskoboinykit is implemented through IBSS mode (as a result, DFS/passive
2129a5e3bffSAndriy Voskoboinykchannels are not available in this mode).
2130afc94c1SUlrich Spörlein.Pp
214*fa573868SAlexander ZiaeePowersave may be unstable on some networks
215*fa573868SAlexander Ziaee.Po results in occasional Sy 'wpi%d: device timeout' No messages Pc ;
216*fa573868SAlexander Ziaeeyou can try to disable it to improve device stability.
217