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