Intel(R) PRO/Wireless 2100 Driver for Linux in support of: Intel(R) PRO/Wireless 2100 Network Connection Copyright (C) 2003-2006, Intel Corporation README.ipw2100 Version: git-1.1.5 Date : January 25, 2006 Index ----------------------------------------------- 0. IMPORTANT INFORMATION BEFORE USING THIS DRIVER 1. Introduction 2. Release git-1.1.5 Current Features 3. Command Line Parameters 4. Sysfs Helper Files 5. Radio Kill Switch 6. Dynamic Firmware 7. Power Management 8. Support 9. License 0. IMPORTANT INFORMATION BEFORE USING THIS DRIVER ----------------------------------------------- Important Notice FOR ALL USERS OR DISTRIBUTORS!!!! Intel wireless LAN adapters are engineered, manufactured, tested, and quality checked to ensure that they meet all necessary local and governmental regulatory agency requirements for the regions that they are designated and/or marked to ship into. Since wireless LANs are generally unlicensed devices that share spectrum with radars, satellites, and other licensed and unlicensed devices, it is sometimes necessary to dynamically detect, avoid, and limit usage to avoid interference with these devices. In many instances Intel is required to provide test data to prove regional and local compliance to regional and governmental regulations before certification or approval to use the product is granted. Intel's wireless LAN's EEPROM, firmware, and software driver are designed to carefully control parameters that affect radio operation and to ensure electromagnetic compliance (EMC). These parameters include, without limitation, RF power, spectrum usage, channel scanning, and human exposure. For these reasons Intel cannot permit any manipulation by third parties of the software provided in binary format with the wireless WLAN adapters (e.g., the EEPROM and firmware). Furthermore, if you use any patches, utilities, or code with the Intel wireless LAN adapters that have been manipulated by an unauthorized party (i.e., patches, utilities, or code (including open source code modifications) which have not been validated by Intel), (i) you will be solely responsible for ensuring the regulatory compliance of the products, (ii) Intel will bear no liability, under any theory of liability for any issues associated with the modified products, including without limitation, claims under the warranty and/or issues arising from regulatory non-compliance, and (iii) Intel will not provide or be required to assist in providing support to any third parties for such modified products. Note: Many regulatory agencies consider Wireless LAN adapters to be modules, and accordingly, condition system-level regulatory approval upon receipt and review of test data documenting that the antennas and system configuration do not cause the EMC and radio operation to be non-compliant. The drivers available for download from SourceForge are provided as a part of a development project. Conformance to local regulatory requirements is the responsibility of the individual developer. As such, if you are interested in deploying or shipping a driver as part of solution intended to be used for purposes other than development, please obtain a tested driver from Intel Customer Support at: http://www.intel.com/support/wireless/sb/CS-006408.htm 1. Introduction ----------------------------------------------- This document provides a brief overview of the features supported by the IPW2100 driver project. The main project website, where the latest development version of the driver can be found, is: http://ipw2100.sourceforge.net There you can find the not only the latest releases, but also information about potential fixes and patches, as well as links to the development mailing list for the driver project. 2. Release git-1.1.5 Current Supported Features ----------------------------------------------- - Managed (BSS) and Ad-Hoc (IBSS) - WEP (shared key and open) - Wireless Tools support - 802.1x (tested with XSupplicant 1.0.1) Enabled (but not supported) features: - Monitor/RFMon mode - WPA/WPA2 The distinction between officially supported and enabled is a reflection on the amount of validation and interoperability testing that has been performed on a given feature. 3. Command Line Parameters ----------------------------------------------- If the driver is built as a module, the following optional parameters are used by entering them on the command line with the modprobe command using this syntax: modprobe ipw2100 [<option>=<VAL1><,VAL2>...] For example, to disable the radio on driver loading, enter: modprobe ipw2100 disable=1 The ipw2100 driver supports the following module parameters: Name Value Example: debug 0x0-0xffffffff debug=1024 mode 0,1,2 mode=1 /* AdHoc */ channel int channel=3 /* Only valid in AdHoc or Monitor */ associate boolean associate=0 /* Do NOT auto associate */ disable boolean disable=1 /* Do not power the HW */ 4. Sysfs Helper Files --------------------------- ----------------------------------------------- There are several ways to control the behavior of the driver. Many of the general capabilities are exposed through the Wireless Tools (iwconfig). There are a few capabilities that are exposed through entries in the Linux Sysfs. ----- Driver Level ------ For the driver level files, look in /sys/bus/pci/drivers/ipw2100/ debug_level This controls the same global as the 'debug' module parameter. For information on the various debugging levels available, run the 'dvals' script found in the driver source directory. NOTE: 'debug_level' is only enabled if CONFIG_IPW2100_DEBUG is turn on. ----- Device Level ------ For the device level files look in /sys/bus/pci/drivers/ipw2100/{PCI-ID}/ For example: /sys/bus/pci/drivers/ipw2100/0000:02:01.0 For the device level files, see /sys/bus/pci/drivers/ipw2100: rf_kill read - 0 = RF kill not enabled (radio on) 1 = SW based RF kill active (radio off) 2 = HW based RF kill active (radio off) 3 = Both HW and SW RF kill active (radio off) write - 0 = If SW based RF kill active, turn the radio back on 1 = If radio is on, activate SW based RF kill NOTE: If you enable the SW based RF kill and then toggle the HW based RF kill from ON -> OFF -> ON, the radio will NOT come back on 5. Radio Kill Switch ----------------------------------------------- Most laptops provide the ability for the user to physically disable the radio. Some vendors have implemented this as a physical switch that requires no software to turn the radio off and on. On other laptops, however, the switch is controlled through a button being pressed and a software driver then making calls to turn the radio off and on. This is referred to as a "software based RF kill switch" See the Sysfs helper file 'rf_kill' for determining the state of the RF switch on your system. 6. Dynamic Firmware ----------------------------------------------- As the firmware is licensed under a restricted use license, it can not be included within the kernel sources. To enable the IPW2100 you will need a firmware image to load into the wireless NIC's processors. You can obtain these images from <http://ipw2100.sf.net/firmware.php>. See INSTALL for instructions on installing the firmware. 7. Power Management ----------------------------------------------- The IPW2100 supports the configuration of the Power Save Protocol through a private wireless extension interface. The IPW2100 supports the following different modes: off No power management. Radio is always on. on Automatic power management 1-5 Different levels of power management. The higher the number the greater the power savings, but with an impact to packet latencies. Power management works by powering down the radio after a certain interval of time has passed where no packets are passed through the radio. Once powered down, the radio remains in that state for a given period of time. For higher power savings, the interval between last packet processed to sleep is shorter and the sleep period is longer. When the radio is asleep, the access point sending data to the station must buffer packets at the AP until the station wakes up and requests any buffered packets. If you have an AP that does not correctly support the PSP protocol you may experience packet loss or very poor performance while power management is enabled. If this is the case, you will need to try and find a firmware update for your AP, or disable power management (via `iwconfig eth1 power off`) To configure the power level on the IPW2100 you use a combination of iwconfig and iwpriv. iwconfig is used to turn power management on, off, and set it to auto. iwconfig eth1 power off Disables radio power down iwconfig eth1 power on Enables radio power management to last set level (defaults to AUTO) iwpriv eth1 set_power 0 Sets power level to AUTO and enables power management if not previously enabled. iwpriv eth1 set_power 1-5 Set the power level as specified, enabling power management if not previously enabled. You can view the current power level setting via: iwpriv eth1 get_power It will return the current period or timeout that is configured as a string in the form of xxxx/yyyy (z) where xxxx is the timeout interval (amount of time after packet processing), yyyy is the period to sleep (amount of time to wait before powering the radio and querying the access point for buffered packets), and z is the 'power level'. If power management is turned off the xxxx/yyyy will be replaced with 'off' -- the level reported will be the active level if `iwconfig eth1 power on` is invoked. 8. Support ----------------------------------------------- For general development information and support, go to: http://ipw2100.sf.net/ The ipw2100 1.1.0 driver and firmware can be downloaded from: http://support.intel.com For installation support on the ipw2100 1.1.0 driver on Linux kernels 2.6.8 or greater, email support is available from: http://supportmail.intel.com 9. License ----------------------------------------------- Copyright(c) 2003 - 2006 Intel Corporation. All rights reserved. This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License (version 2) as published by the Free Software Foundation. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. The full GNU General Public License is included in this distribution in the file called LICENSE. License Contact Information: James P. Ketrenos <ipw2100-admin@linux.intel.com> Intel Corporation, 5200 N.E. Elam Young Parkway, Hillsboro, OR 97124-6497