|  | 
 | Intel(R) PRO/Wireless 2915ABG Driver for Linux in support of: | 
 |  | 
 | Intel(R) PRO/Wireless 2200BG Network Connection | 
 | Intel(R) PRO/Wireless 2915ABG Network Connection | 
 |  | 
 | Note: The Intel(R) PRO/Wireless 2915ABG Driver for Linux and Intel(R) | 
 | PRO/Wireless 2200BG Driver for Linux is a unified driver that works on | 
 | both hardware adapters listed above. In this document the Intel(R) | 
 | PRO/Wireless 2915ABG Driver for Linux will be used to reference the | 
 | unified driver. | 
 |  | 
 | Copyright (C) 2004-2005, Intel Corporation | 
 |  | 
 | README.ipw2200 | 
 |  | 
 | Version: 1.0.8 | 
 | Date   : October 20, 2005 | 
 |  | 
 |  | 
 | Index | 
 | ----------------------------------------------- | 
 | 0.   IMPORTANT INFORMATION BEFORE USING THIS DRIVER | 
 | 1.   Introduction | 
 | 1.1. Overview of features | 
 | 1.2. Module parameters | 
 | 1.3. Wireless Extension Private Methods | 
 | 1.4. Sysfs Helper Files | 
 | 2.   Ad-Hoc Networking | 
 | 3.   Interacting with Wireless Tools | 
 | 3.1. iwconfig mode | 
 | 4.   About the Version Numbers | 
 | 5.   Firmware installation | 
 | 6.   Support | 
 | 7.   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://support.intel.com/support/notebook/sb/CS-006408.htm | 
 |  | 
 |  | 
 | 1.   Introduction | 
 | ----------------------------------------------- | 
 | The following sections attempt to provide a brief introduction to using  | 
 | the Intel(R) PRO/Wireless 2915ABG Driver for Linux. | 
 |  | 
 | This document is not meant to be a comprehensive manual on  | 
 | understanding or using wireless technologies, but should be sufficient  | 
 | to get you moving without wires on Linux. | 
 |  | 
 | For information on building and installing the driver, see the INSTALL | 
 | file. | 
 |  | 
 |  | 
 | 1.1. Overview of Features | 
 | ----------------------------------------------- | 
 | The current release (1.0.8) supports the following features: | 
 |  | 
 | + BSS mode (Infrastructure, Managed) | 
 | + IBSS mode (Ad-Hoc) | 
 | + WEP (OPEN and SHARED KEY mode) | 
 | + 802.1x EAP via wpa_supplicant and xsupplicant | 
 | + Wireless Extension support  | 
 | + Full B and G rate support (2200 and 2915) | 
 | + Full A rate support (2915 only) | 
 | + Transmit power control | 
 | + S state support (ACPI suspend/resume) | 
 |  | 
 | The following features are currently enabled, but not officially | 
 | supported: | 
 |  | 
 | + WPA | 
 | + long/short preamble support | 
 | + Monitor mode (aka RFMon) | 
 |  | 
 | 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.  | 
 |  | 
 |  | 
 |  | 
 | 1.2. Command Line Parameters | 
 | ----------------------------------------------- | 
 |  | 
 | Like many modules used in the Linux kernel, the Intel(R) PRO/Wireless | 
 | 2915ABG Driver for Linux allows configuration options to be provided  | 
 | as module parameters.  The most common way to specify a module parameter  | 
 | is via the command line.   | 
 |  | 
 | The general form is: | 
 |  | 
 | % modprobe ipw2200 parameter=value | 
 |  | 
 | Where the supported parameter are: | 
 |  | 
 |   associate | 
 | 	Set to 0 to disable the auto scan-and-associate functionality of the | 
 | 	driver.  If disabled, the driver will not attempt to scan  | 
 | 	for and associate to a network until it has been configured with  | 
 | 	one or more properties for the target network, for example configuring  | 
 | 	the network SSID.  Default is 1 (auto-associate) | 
 | 	 | 
 | 	Example: % modprobe ipw2200 associate=0 | 
 |  | 
 |   auto_create | 
 | 	Set to 0 to disable the auto creation of an Ad-Hoc network  | 
 | 	matching the channel and network name parameters provided.   | 
 | 	Default is 1. | 
 |  | 
 |   channel | 
 | 	channel number for association.  The normal method for setting | 
 |         the channel would be to use the standard wireless tools | 
 |         (i.e. `iwconfig eth1 channel 10`), but it is useful sometimes | 
 | 	to set this while debugging.  Channel 0 means 'ANY' | 
 |  | 
 |   debug | 
 | 	If using a debug build, this is used to control the amount of debug | 
 | 	info is logged.  See the 'dvals' and 'load' script for more info on | 
 | 	how to use this (the dvals and load scripts are provided as part  | 
 | 	of the ipw2200 development snapshot releases available from the  | 
 | 	SourceForge project at http://ipw2200.sf.net) | 
 |    | 
 |   led | 
 | 	Can be used to turn on experimental LED code. | 
 | 	0 = Off, 1 = On.  Default is 0. | 
 |  | 
 |   mode | 
 | 	Can be used to set the default mode of the adapter.   | 
 | 	0 = Managed, 1 = Ad-Hoc, 2 = Monitor | 
 |  | 
 |  | 
 | 1.3. Wireless Extension Private Methods | 
 | ----------------------------------------------- | 
 |  | 
 | As an interface designed to handle generic hardware, there are certain  | 
 | capabilities not exposed through the normal Wireless Tool interface.  As  | 
 | such, a provision is provided for a driver to declare custom, or  | 
 | private, methods.  The Intel(R) PRO/Wireless 2915ABG Driver for Linux  | 
 | defines several of these to configure various settings. | 
 |  | 
 | The general form of using the private wireless methods is: | 
 |  | 
 | 	% iwpriv $IFNAME method parameters | 
 |  | 
 | Where $IFNAME is the interface name the device is registered with  | 
 | (typically eth1, customized via one of the various network interface | 
 | name managers, such as ifrename) | 
 |  | 
 | The supported private methods are: | 
 |  | 
 |   get_mode | 
 | 	Can be used to report out which IEEE mode the driver is  | 
 | 	configured to support.  Example: | 
 | 	 | 
 | 	% iwpriv eth1 get_mode | 
 | 	eth1	get_mode:802.11bg (6) | 
 |  | 
 |   set_mode | 
 | 	Can be used to configure which IEEE mode the driver will  | 
 | 	support.   | 
 |  | 
 | 	Usage: | 
 | 	% iwpriv eth1 set_mode {mode} | 
 | 	Where {mode} is a number in the range 1-7: | 
 | 	1	802.11a (2915 only) | 
 | 	2	802.11b | 
 | 	3	802.11ab (2915 only) | 
 | 	4	802.11g  | 
 | 	5	802.11ag (2915 only) | 
 | 	6	802.11bg | 
 | 	7	802.11abg (2915 only) | 
 |  | 
 |   get_preamble | 
 | 	Can be used to report configuration of preamble length. | 
 |  | 
 |   set_preamble | 
 | 	Can be used to set the configuration of preamble length: | 
 |  | 
 | 	Usage: | 
 | 	% iwpriv eth1 set_preamble {mode} | 
 | 	Where {mode} is one of: | 
 | 	1	Long preamble only | 
 | 	0	Auto (long or short based on connection) | 
 | 	 | 
 |  | 
 | 1.4. Sysfs Helper Files: | 
 | ----------------------------------------------- | 
 |  | 
 | The Linux kernel provides a pseudo file system that can be used to  | 
 | access various components of the operating system.  The Intel(R) | 
 | PRO/Wireless 2915ABG Driver for Linux exposes several configuration | 
 | parameters through this mechanism. | 
 |  | 
 | An entry in the sysfs can support reading and/or writing.  You can  | 
 | typically query the contents of a sysfs entry through the use of cat,  | 
 | and can set the contents via echo.  For example: | 
 |  | 
 | % cat /sys/bus/pci/drivers/ipw2200/debug_level | 
 |  | 
 | Will report the current debug level of the driver's logging subsystem  | 
 | (only available if CONFIG_IPW_DEBUG was configured when the driver was  | 
 | built). | 
 |  | 
 | You can set the debug level via: | 
 |  | 
 | % echo $VALUE > /sys/bus/pci/drivers/ipw2200/debug_level | 
 |  | 
 | Where $VALUE would be a number in the case of this sysfs entry.  The  | 
 | input to sysfs files does not have to be a number.  For example, the  | 
 | firmware loader used by hotplug utilizes sysfs entries for transfering  | 
 | the firmware image from user space into the driver. | 
 |  | 
 | The Intel(R) PRO/Wireless 2915ABG Driver for Linux exposes sysfs entries  | 
 | at two levels -- driver level, which apply to all instances of the driver  | 
 | (in the event that there are more than one device installed) and device  | 
 | level, which applies only to the single specific instance. | 
 |  | 
 |  | 
 | 1.4.1 Driver Level Sysfs Helper Files | 
 | ----------------------------------------------- | 
 |  | 
 | For the driver level files, look in /sys/bus/pci/drivers/ipw2200/ | 
 |  | 
 |   debug_level   | 
 | 	 | 
 | 	This controls the same global as the 'debug' module parameter | 
 |  | 
 |  | 
 |  | 
 | 1.4.2 Device Level Sysfs Helper Files | 
 | ----------------------------------------------- | 
 |  | 
 | For the device level files, look in | 
 | 	 | 
 | 	/sys/bus/pci/drivers/ipw2200/{PCI-ID}/ | 
 |  | 
 | For example: | 
 | 	/sys/bus/pci/drivers/ipw2200/0000:02:01.0 | 
 |  | 
 | For the device level files, see /sys/bus/pci/drivers/ipw2200: | 
 |  | 
 |   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 | 
 | 	 | 
 |   ucode  | 
 | 	read-only access to the ucode version number | 
 |  | 
 |   led | 
 | 	read - | 
 | 	0 = LED code disabled | 
 | 	1 = LED code enabled | 
 | 	write - | 
 | 	0 = Disable LED code | 
 | 	1 = Enable LED code | 
 |  | 
 | 	NOTE: The LED code has been reported to hang some systems when  | 
 | 	running ifconfig and is therefore disabled by default. | 
 |  | 
 |  | 
 | 2.   Ad-Hoc Networking | 
 | ----------------------------------------------- | 
 |  | 
 | When using a device in an Ad-Hoc network, it is useful to understand the  | 
 | sequence and requirements for the driver to be able to create, join, or  | 
 | merge networks. | 
 |  | 
 | The following attempts to provide enough information so that you can  | 
 | have a consistent experience while using the driver as a member of an  | 
 | Ad-Hoc network. | 
 |  | 
 | 2.1. Joining an Ad-Hoc Network | 
 | ----------------------------------------------- | 
 |  | 
 | The easiest way to get onto an Ad-Hoc network is to join one that  | 
 | already exists. | 
 |  | 
 | 2.2. Creating an Ad-Hoc Network | 
 | ----------------------------------------------- | 
 |  | 
 | An Ad-Hoc networks is created using the syntax of the Wireless tool. | 
 |  | 
 | For Example: | 
 | iwconfig eth1 mode ad-hoc essid testing channel 2 | 
 |  | 
 | 2.3. Merging Ad-Hoc Networks | 
 | ----------------------------------------------- | 
 |  | 
 |  | 
 | 3.  Interaction with Wireless Tools | 
 | ----------------------------------------------- | 
 |  | 
 | 3.1 iwconfig mode | 
 | ----------------------------------------------- | 
 |  | 
 | When configuring the mode of the adapter, all run-time configured parameters | 
 | are reset to the value used when the module was loaded.  This includes | 
 | channels, rates, ESSID, etc. | 
 |  | 
 |  | 
 | 4.   About the Version Numbers | 
 | ----------------------------------------------- | 
 |  | 
 | Due to the nature of open source development projects, there are  | 
 | frequently changes being incorporated that have not gone through  | 
 | a complete validation process.  These changes are incorporated into  | 
 | development snapshot releases. | 
 |  | 
 | Releases are numbered with a three level scheme:  | 
 |  | 
 | 	major.minor.development | 
 |  | 
 | Any version where the 'development' portion is 0 (for example | 
 | 1.0.0, 1.1.0, etc.) indicates a stable version that will be made  | 
 | available for kernel inclusion. | 
 |  | 
 | Any version where the 'development' portion is not a 0 (for | 
 | example 1.0.1, 1.1.5, etc.) indicates a development version that is | 
 | being made available for testing and cutting edge users.  The stability  | 
 | and functionality of the development releases are not know.  We make | 
 | efforts to try and keep all snapshots reasonably stable, but due to the | 
 | frequency of their release, and the desire to get those releases  | 
 | available as quickly as possible, unknown anomalies should be expected. | 
 |  | 
 | The major version number will be incremented when significant changes | 
 | are made to the driver.  Currently, there are no major changes planned. | 
 |  | 
 | 5.  Firmware installation | 
 | ---------------------------------------------- | 
 |  | 
 | The driver requires a firmware image, download it and extract the | 
 | files under /lib/firmware (or wherever your hotplug's firmware.agent | 
 | will look for firmware files) | 
 |  | 
 | The firmware can be downloaded from the following URL: | 
 |  | 
 |     http://ipw2200.sf.net/ | 
 |  | 
 |  | 
 | 6.  Support | 
 | ----------------------------------------------- | 
 |  | 
 | For direct support of the 1.0.0 version, you can contact  | 
 | http://supportmail.intel.com, or you can use the open source project | 
 | support. | 
 |  | 
 | For general information and support, go to: | 
 | 	 | 
 |     http://ipw2200.sf.net/ | 
 |  | 
 |  | 
 | 7.  License | 
 | ----------------------------------------------- | 
 |  | 
 |   Copyright(c) 2003 - 2005 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. | 
 |    | 
 |   Contact Information: | 
 |   James P. Ketrenos <ipw2100-admin@linux.intel.com> | 
 |   Intel Corporation, 5200 N.E. Elam Young Parkway, Hillsboro, OR 97124-6497 | 
 |  |