| James Ketrenos | 2c86c27 | 2005-03-23 17:32:29 -0600 | [diff] [blame] | 1 |  | 
| James Ketrenos | 826d2ab | 2005-11-07 18:56:59 -0600 | [diff] [blame] | 2 | Intel(R) PRO/Wireless 2100 Driver for Linux in support of: | 
 | 3 |  | 
 | 4 | Intel(R) PRO/Wireless 2100 Network Connection | 
 | 5 |  | 
| Zhu Yi | 171e7b2 | 2006-02-15 07:17:56 +0800 | [diff] [blame] | 6 | Copyright (C) 2003-2006, Intel Corporation | 
| James Ketrenos | 826d2ab | 2005-11-07 18:56:59 -0600 | [diff] [blame] | 7 |  | 
| James Ketrenos | 2c86c27 | 2005-03-23 17:32:29 -0600 | [diff] [blame] | 8 | README.ipw2100 | 
 | 9 |  | 
| Zhu Yi | 171e7b2 | 2006-02-15 07:17:56 +0800 | [diff] [blame] | 10 | Version: git-1.1.5 | 
 | 11 | Date   : January 25, 2006 | 
| James Ketrenos | 2c86c27 | 2005-03-23 17:32:29 -0600 | [diff] [blame] | 12 |  | 
| James Ketrenos | 2c86c27 | 2005-03-23 17:32:29 -0600 | [diff] [blame] | 13 | Index | 
| James Ketrenos | 826d2ab | 2005-11-07 18:56:59 -0600 | [diff] [blame] | 14 | ----------------------------------------------- | 
 | 15 | 0. IMPORTANT INFORMATION BEFORE USING THIS DRIVER | 
 | 16 | 1. Introduction | 
| Zhu Yi | 171e7b2 | 2006-02-15 07:17:56 +0800 | [diff] [blame] | 17 | 2. Release git-1.1.5 Current Features | 
| James Ketrenos | 826d2ab | 2005-11-07 18:56:59 -0600 | [diff] [blame] | 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 | 
| James Ketrenos | 2c86c27 | 2005-03-23 17:32:29 -0600 | [diff] [blame] | 25 |  | 
 | 26 |  | 
| James Ketrenos | 826d2ab | 2005-11-07 18:56:59 -0600 | [diff] [blame] | 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 |  | 
| Justin P. Mattock | 0ea6e61 | 2010-07-23 20:51:24 -0700 | [diff] [blame] | 75 | http://www.intel.com/support/wireless/sb/CS-006408.htm | 
| James Ketrenos | 826d2ab | 2005-11-07 18:56:59 -0600 | [diff] [blame] | 76 |  | 
 | 77 | 1. Introduction | 
 | 78 | ----------------------------------------------- | 
| James Ketrenos | 2c86c27 | 2005-03-23 17:32:29 -0600 | [diff] [blame] | 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 |  | 
| Zhu Yi | 171e7b2 | 2006-02-15 07:17:56 +0800 | [diff] [blame] | 91 | 2. Release git-1.1.5 Current Supported Features | 
| James Ketrenos | 826d2ab | 2005-11-07 18:56:59 -0600 | [diff] [blame] | 92 | ----------------------------------------------- | 
| James Ketrenos | 2c86c27 | 2005-03-23 17:32:29 -0600 | [diff] [blame] | 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 |  | 
| James Ketrenos | 826d2ab | 2005-11-07 18:56:59 -0600 | [diff] [blame] | 107 | 3. Command Line Parameters | 
 | 108 | ----------------------------------------------- | 
| James Ketrenos | 2c86c27 | 2005-03-23 17:32:29 -0600 | [diff] [blame] | 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 |  | 
| James Ketrenos | 826d2ab | 2005-11-07 18:56:59 -0600 | [diff] [blame] | 130 | 4. Sysfs Helper Files | 
| James Ketrenos | 2c86c27 | 2005-03-23 17:32:29 -0600 | [diff] [blame] | 131 | ---------------------------      | 
| James Ketrenos | 826d2ab | 2005-11-07 18:56:59 -0600 | [diff] [blame] | 132 | ----------------------------------------------- | 
| James Ketrenos | 2c86c27 | 2005-03-23 17:32:29 -0600 | [diff] [blame] | 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 |  | 
| James Ketrenos | 826d2ab | 2005-11-07 18:56:59 -0600 | [diff] [blame] | 175 | 5. Radio Kill Switch | 
 | 176 | ----------------------------------------------- | 
| James Ketrenos | 2c86c27 | 2005-03-23 17:32:29 -0600 | [diff] [blame] | 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 |  | 
| James Ketrenos | 826d2ab | 2005-11-07 18:56:59 -0600 | [diff] [blame] | 188 | 6. Dynamic Firmware | 
 | 189 | ----------------------------------------------- | 
| James Ketrenos | 2c86c27 | 2005-03-23 17:32:29 -0600 | [diff] [blame] | 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 |  | 
| James Ketrenos | 826d2ab | 2005-11-07 18:56:59 -0600 | [diff] [blame] | 199 | 7. Power Management | 
 | 200 | ----------------------------------------------- | 
| James Ketrenos | 2c86c27 | 2005-03-23 17:32:29 -0600 | [diff] [blame] | 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 |  | 
| James Ketrenos | 826d2ab | 2005-11-07 18:56:59 -0600 | [diff] [blame] | 252 | 8. Support | 
 | 253 | ----------------------------------------------- | 
| James Ketrenos | 2c86c27 | 2005-03-23 17:32:29 -0600 | [diff] [blame] | 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 |  | 
| James Ketrenos | 826d2ab | 2005-11-07 18:56:59 -0600 | [diff] [blame] | 269 | 9. License | 
 | 270 | ----------------------------------------------- | 
| James Ketrenos | 2c86c27 | 2005-03-23 17:32:29 -0600 | [diff] [blame] | 271 |  | 
| Zhu Yi | 171e7b2 | 2006-02-15 07:17:56 +0800 | [diff] [blame] | 272 |   Copyright(c) 2003 - 2006 Intel Corporation. All rights reserved. | 
| James Ketrenos | 2c86c27 | 2005-03-23 17:32:29 -0600 | [diff] [blame] | 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 |  |