Difference between revisions of "Ipw2200"

From ThinkWiki
Jump to: navigation, search
(WPA support)
Line 78: Line 78:
  
 
NB: To make the wifi LED work on the thinkpad, pass the option {{bootparm|led|1}} to the kernel while loading the module. eg. {{cmdroot|1=modprobe ipw2200 led=1}}.  This can also be accomplished by adding that option to the file where your distribution looks for modprobe options so that it becomes automatic.
 
NB: To make the wifi LED work on the thinkpad, pass the option {{bootparm|led|1}} to the kernel while loading the module. eg. {{cmdroot|1=modprobe ipw2200 led=1}}.  This can also be accomplished by adding that option to the file where your distribution looks for modprobe options so that it becomes automatic.
 +
 +
== WPA support ==
 +
 +
Use [[wpa_supplicant]] with the <tt>-Dwext</tt> argument (not <tt>-Dipw</tt>), and pass the <tt>hwcrypto=0</tt> argument to the <tt>ipw2200</tt> module.
  
 
== Power Management ==
 
== Power Management ==

Revision as of 11:14, 6 February 2006

Intel PRO/Wireless 2200/2915 Driver for WiFi

Linux driver for the 802.11bg and 802.11abg NICs - miniPCI cards - found in Centrino laptops. This driver only works on 2.6.x kernels (2.6.4 or newer).

Starting with kernels 2.6.14 the driver is included in kernel.

The following adapters sold by IBM use these chips:

Project Homepage / Availability

http://ipw2200.sourceforge.net/

Packages

Status

In development, usable, WEP 128bit encryption works, WPA does also work with drivers >= 1.0.2 and wpa_supplicant, monitor/rfmon is supported as with version >= 1.0.6. Generally works well, but some users experience problems (especially with firmware restarts and with WPA functionality using wpa_supplicant). Passing the hwcrypto=0 module parameter improves reliability for many users.

Latest versions:

  • ipw2200 driver: 1.0.10
  • firmware: 2.4
  • ieee80211 stack: 1.1.8

Mainline kernels contain older versions of ipw2200 and ieee80211, and still require the addition of the firmware files. To get the latest versions you need to separately install the ipw2200 module and ieee80211 stack.

Installation

Installation from sourcecode

Download the latest ieee80211 stack and install it:

# tar xzvf ieee80211-1.1.8.tgz
# cd ieee80211-1.1.8
# make
# make install

Download the latest ipw2200 module and install it:

# tar xzvf ipw2200-1.0.10.tgz
# cd ipw2200-1.0.10
# make
# make install

Download the matching firmware and install it:

# tar xzvf ipw2200-fw-2.4.tgz -C /lib/firmware

Installation on Debian

Install ieee80211-source:

# apt-get install ieee80211-source
# module-assistant -t build ieee80211-source

Install ipw2200-source:

# apt-get install ipw2200-source
# module-assistant -t build ipw2200-source

There is a bug in the Debian package (last checked: Dec 30th 2005) that prevents from linking to ieee80211 modules using module-assistant. In case it is not fixed in your version, fall back to the regular source installation procedure described above.

The firmware is not distributed with debian due to licensing reasons, download the matching firmware and install it:

# tar xzvf ipw2200-fw-2.4.tgz -C /lib/hotplug/firmware

see /etc/hotplug/firmware.agent for details on configured firmware locations

Testing the driver

# modprobe ipw2200
# iwconfig

# dmesg output might look similar to this:

ieee80211: 802.11 data/management/control stack, 1.1.6
ieee80211: Copyright (C) 2004-2005 Intel Corporation <jketreno@linux.intel.com>
ipw2200: Intel(R) PRO/Wireless 2200/2915 Network Driver, 1.0.8
ipw2200: Copyright(c) 2003-2005 Intel Corporation
ipw2200: Detected Intel PRO/Wireless 2915ABG Network Connection

NB: To make the wifi LED work on the thinkpad, pass the option led=1 to the kernel while loading the module. eg. # modprobe ipw2200 led=1. This can also be accomplished by adding that option to the file where your distribution looks for modprobe options so that it becomes automatic.

WPA support

Use wpa_supplicant with the -Dwext argument (not -Dipw), and pass the hwcrypto=0 argument to the ipw2200 module.

Power Management

To enable power management, issue:

# iwpriv wlan0 set_power 7

where wlan0 is the name if your interface. This will reduce idle power consumption by several Watts compared to no power management.

  • To disable the radio (and further reduce power consumption) when the card is not in use, issue:
# echo 1 > /sys/bus/pci/drivers/ipw2200/*/rf_kill
  • To enable the radio, issue:
# echo 0 > /sys/bus/pci/drivers/ipw2200/*/rf_kill
  • To make the radio off by default after boot, add
options ipw2200 disable=1

to your /etc/modprobe.conf or equivalent.

See README.ipw2200 in the ipw2200 package for details and other options.

Additional Comments

Your kernel may include an old version of the ipw2200 driver. It is recommended to use the latest version.

Make sure you also install the firmware version needed by the driver version you use. You can find the firmware here. To install it, decompress the .tgz file into /lib/firmware.

The driver doesn't appear to support the MII interface, so any tools like automatic network configuration managers (i.e. whereami) that rely on mii-tool do not work.