arm64: dts: qcom: sm8550: add TRNG node
[linux-modified.git] / Documentation / networking / device_drivers / wifi / intel / ipw2100.rst
1 .. SPDX-License-Identifier: GPL-2.0
2 .. include:: <isonum.txt>
3
4 ===========================================
5 Intel(R) PRO/Wireless 2100 Driver for Linux
6 ===========================================
7
8 Support for:
9
10 - Intel(R) PRO/Wireless 2100 Network Connection
11
12 Copyright |copy| 2003-2006, Intel Corporation
13
14 README.ipw2100
15
16 :Version: git-1.1.5
17 :Date:    January 25, 2006
18
19 .. Index
20
21     0. IMPORTANT INFORMATION BEFORE USING THIS DRIVER
22     1. Introduction
23     2. Release git-1.1.5 Current Features
24     3. Command Line Parameters
25     4. Sysfs Helper Files
26     5. Radio Kill Switch
27     6. Dynamic Firmware
28     7. Power Management
29     8. Support
30     9. License
31
32
33 0. IMPORTANT INFORMATION BEFORE USING THIS DRIVER
34 =================================================
35
36 Important Notice FOR ALL USERS OR DISTRIBUTORS!!!!
37
38 Intel wireless LAN adapters are engineered, manufactured, tested, and
39 quality checked to ensure that they meet all necessary local and
40 governmental regulatory agency requirements for the regions that they
41 are designated and/or marked to ship into. Since wireless LANs are
42 generally unlicensed devices that share spectrum with radars,
43 satellites, and other licensed and unlicensed devices, it is sometimes
44 necessary to dynamically detect, avoid, and limit usage to avoid
45 interference with these devices. In many instances Intel is required to
46 provide test data to prove regional and local compliance to regional and
47 governmental regulations before certification or approval to use the
48 product is granted. Intel's wireless LAN's EEPROM, firmware, and
49 software driver are designed to carefully control parameters that affect
50 radio operation and to ensure electromagnetic compliance (EMC). These
51 parameters include, without limitation, RF power, spectrum usage,
52 channel scanning, and human exposure.
53
54 For these reasons Intel cannot permit any manipulation by third parties
55 of the software provided in binary format with the wireless WLAN
56 adapters (e.g., the EEPROM and firmware). Furthermore, if you use any
57 patches, utilities, or code with the Intel wireless LAN adapters that
58 have been manipulated by an unauthorized party (i.e., patches,
59 utilities, or code (including open source code modifications) which have
60 not been validated by Intel), (i) you will be solely responsible for
61 ensuring the regulatory compliance of the products, (ii) Intel will bear
62 no liability, under any theory of liability for any issues associated
63 with the modified products, including without limitation, claims under
64 the warranty and/or issues arising from regulatory non-compliance, and
65 (iii) Intel will not provide or be required to assist in providing
66 support to any third parties for such modified products.
67
68 Note: Many regulatory agencies consider Wireless LAN adapters to be
69 modules, and accordingly, condition system-level regulatory approval
70 upon receipt and review of test data documenting that the antennas and
71 system configuration do not cause the EMC and radio operation to be
72 non-compliant.
73
74 The drivers available for download from SourceForge are provided as a
75 part of a development project.  Conformance to local regulatory
76 requirements is the responsibility of the individual developer.  As
77 such, if you are interested in deploying or shipping a driver as part of
78 solution intended to be used for purposes other than development, please
79 obtain a tested driver from Intel Customer Support at:
80
81 https://www.intel.com/support/wireless/sb/CS-006408.htm
82
83 1. Introduction
84 ===============
85
86 This document provides a brief overview of the features supported by the
87 IPW2100 driver project.  The main project website, where the latest
88 development version of the driver can be found, is:
89
90         http://ipw2100.sourceforge.net
91
92 There you can find the not only the latest releases, but also information about
93 potential fixes and patches, as well as links to the development mailing list
94 for the driver project.
95
96
97 2. Release git-1.1.5 Current Supported Features
98 ===============================================
99
100 - Managed (BSS) and Ad-Hoc (IBSS)
101 - WEP (shared key and open)
102 - Wireless Tools support
103 - 802.1x (tested with XSupplicant 1.0.1)
104
105 Enabled (but not supported) features:
106 - Monitor/RFMon mode
107 - WPA/WPA2
108
109 The distinction between officially supported and enabled is a reflection
110 on the amount of validation and interoperability testing that has been
111 performed on a given feature.
112
113
114 3. Command Line Parameters
115 ==========================
116
117 If the driver is built as a module, the following optional parameters are used
118 by entering them on the command line with the modprobe command using this
119 syntax::
120
121         modprobe ipw2100 [<option>=<VAL1><,VAL2>...]
122
123 For example, to disable the radio on driver loading, enter:
124
125         modprobe ipw2100 disable=1
126
127 The ipw2100 driver supports the following module parameters:
128
129 =========       ==============  ============  ==============================
130 Name            Value           Example       Meaning
131 =========       ==============  ============  ==============================
132 debug           0x0-0xffffffff  debug=1024    Debug level set to 1024
133 mode            0,1,2           mode=1        AdHoc
134 channel         int             channel=3     Only valid in AdHoc or Monitor
135 associate       boolean         associate=0   Do NOT auto associate
136 disable         boolean         disable=1     Do not power the HW
137 =========       ==============  ============  ==============================
138
139
140 4. Sysfs Helper Files
141 =====================
142
143 There are several ways to control the behavior of the driver.  Many of the
144 general capabilities are exposed through the Wireless Tools (iwconfig).  There
145 are a few capabilities that are exposed through entries in the Linux Sysfs.
146
147
148 **Driver Level**
149
150 For the driver level files, look in /sys/bus/pci/drivers/ipw2100/
151
152   debug_level
153         This controls the same global as the 'debug' module parameter.  For
154         information on the various debugging levels available, run the 'dvals'
155         script found in the driver source directory.
156
157         .. note::
158
159               'debug_level' is only enabled if CONFIG_IPW2100_DEBUG is turn on.
160
161 **Device Level**
162
163 For the device level files look in::
164
165         /sys/bus/pci/drivers/ipw2100/{PCI-ID}/
166
167 For example::
168
169         /sys/bus/pci/drivers/ipw2100/0000:02:01.0
170
171 For the device level files, see /sys/bus/pci/drivers/ipw2100:
172
173   rf_kill
174         read
175
176         ==  =========================================
177         0   RF kill not enabled (radio on)
178         1   SW based RF kill active (radio off)
179         2   HW based RF kill active (radio off)
180         3   Both HW and SW RF kill active (radio off)
181         ==  =========================================
182
183         write
184
185         ==  ==================================================
186         0   If SW based RF kill active, turn the radio back on
187         1   If radio is on, activate SW based RF kill
188         ==  ==================================================
189
190         .. note::
191
192            If you enable the SW based RF kill and then toggle the HW
193            based RF kill from ON -> OFF -> ON, the radio will NOT come back on
194
195
196 5. Radio Kill Switch
197 ====================
198
199 Most laptops provide the ability for the user to physically disable the radio.
200 Some vendors have implemented this as a physical switch that requires no
201 software to turn the radio off and on.  On other laptops, however, the switch
202 is controlled through a button being pressed and a software driver then making
203 calls to turn the radio off and on.  This is referred to as a "software based
204 RF kill switch"
205
206 See the Sysfs helper file 'rf_kill' for determining the state of the RF switch
207 on your system.
208
209
210 6. Dynamic Firmware
211 ===================
212
213 As the firmware is licensed under a restricted use license, it can not be
214 included within the kernel sources.  To enable the IPW2100 you will need a
215 firmware image to load into the wireless NIC's processors.
216
217 You can obtain these images from <http://ipw2100.sf.net/firmware.php>.
218
219 See INSTALL for instructions on installing the firmware.
220
221
222 7. Power Management
223 ===================
224
225 The IPW2100 supports the configuration of the Power Save Protocol
226 through a private wireless extension interface.  The IPW2100 supports
227 the following different modes:
228
229         ===     ===========================================================
230         off     No power management.  Radio is always on.
231         on      Automatic power management
232         1-5     Different levels of power management.  The higher the
233                 number the greater the power savings, but with an impact to
234                 packet latencies.
235         ===     ===========================================================
236
237 Power management works by powering down the radio after a certain
238 interval of time has passed where no packets are passed through the
239 radio.  Once powered down, the radio remains in that state for a given
240 period of time.  For higher power savings, the interval between last
241 packet processed to sleep is shorter and the sleep period is longer.
242
243 When the radio is asleep, the access point sending data to the station
244 must buffer packets at the AP until the station wakes up and requests
245 any buffered packets.  If you have an AP that does not correctly support
246 the PSP protocol you may experience packet loss or very poor performance
247 while power management is enabled.  If this is the case, you will need
248 to try and find a firmware update for your AP, or disable power
249 management (via ``iwconfig eth1 power off``)
250
251 To configure the power level on the IPW2100 you use a combination of
252 iwconfig and iwpriv.  iwconfig is used to turn power management on, off,
253 and set it to auto.
254
255         =========================  ====================================
256         iwconfig eth1 power off    Disables radio power down
257         iwconfig eth1 power on     Enables radio power management to
258                                    last set level (defaults to AUTO)
259         iwpriv eth1 set_power 0    Sets power level to AUTO and enables
260                                    power management if not previously
261                                    enabled.
262         iwpriv eth1 set_power 1-5  Set the power level as specified,
263                                    enabling power management if not
264                                    previously enabled.
265         =========================  ====================================
266
267 You can view the current power level setting via::
268
269         iwpriv eth1 get_power
270
271 It will return the current period or timeout that is configured as a string
272 in the form of xxxx/yyyy (z) where xxxx is the timeout interval (amount of
273 time after packet processing), yyyy is the period to sleep (amount of time to
274 wait before powering the radio and querying the access point for buffered
275 packets), and z is the 'power level'.  If power management is turned off the
276 xxxx/yyyy will be replaced with 'off' -- the level reported will be the active
277 level if `iwconfig eth1 power on` is invoked.
278
279
280 8. Support
281 ==========
282
283 For general development information and support,
284 go to:
285
286     http://ipw2100.sf.net/
287
288 The ipw2100 1.1.0 driver and firmware can be downloaded from:
289
290     http://support.intel.com
291
292 For installation support on the ipw2100 1.1.0 driver on Linux kernels
293 2.6.8 or greater, email support is available from:
294
295     http://supportmail.intel.com
296
297 9. License
298 ==========
299
300   Copyright |copy| 2003 - 2006 Intel Corporation. All rights reserved.
301
302   This program is free software; you can redistribute it and/or modify it
303   under the terms of the GNU General Public License (version 2) as
304   published by the Free Software Foundation.
305
306   This program is distributed in the hope that it will be useful, but WITHOUT
307   ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
308   FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for
309   more details.
310
311   You should have received a copy of the GNU General Public License along with
312   this program; if not, write to the Free Software Foundation, Inc., 59
313   Temple Place - Suite 330, Boston, MA  02111-1307, USA.
314
315   The full GNU General Public License is included in this distribution in the
316   file called LICENSE.
317
318   License Contact Information:
319
320   James P. Ketrenos <ipw2100-admin@linux.intel.com>
321
322   Intel Corporation, 5200 N.E. Elam Young Parkway, Hillsboro, OR 97124-6497
323