Differences between revisions 32 and 33
Revision 32 as of 2008-04-05 18:55:35
Size: 5576
Comment: update on installation
Revision 33 as of 2008-04-05 19:02:33
Size: 6064
Comment: minor changes, adding wpa
Deletions are marked like this. Additions are marked like this.
Line 10: Line 10:
 * iwl4965 is supported by kernel 2.6.23 and only required installation of firmware. Currently you can get this version of kernel by installing testing version of Debian (Lenny) or coming soon Debian stable 4.0r4.  * iwl4965 is supported by kernel 2.6.23 or higher and only requires installation of firmware. Currently you can get this version of kernel by installing testing version of Debian (Lenny) or coming soon Debian stable 4.0r4.
Line 29: Line 29:
 * use DebPkg:network-manager to use the interface.  * You can use Gnome DebPkg:network-manager to use the interface.
__ Gnome Network Manager __
 *Gnome- Double click on Network Connection (If you don't have an icon click on add to panel, then Select "Network Monitor" and click add)
 *Name: Wlan0
 *Click on configure
 *Select Wireless connection
 *Properties
 *Pick a network, add a password, select dhcp and click ok
 *You should be connected.
Line 38: Line 47:
=== Using wpa, wpa2 ===
[:Manual-Howto#head-6fdd87d329e68a583e5fde32c6b21e460e5541a5: Using wpa_supplicant via wpa, wpa2]

This page describes how to use iwl-wifi ([http://www.intellinuxwireless.org/ Intel Wireless WiFi Link driver]) with an iwl3945 or iwl4965.

  • ?TableOfContents(2)

Introduction

The iwl-wifi drivers are open-source drivers supported by Intel, replacing the older Intel drivers which needed some non-free userspace daemon.

Installation

  • iwl4965 is supported by kernel 2.6.23 or higher and only requires installation of firmware. Currently you can get this version of kernel by installing testing version of Debian (Lenny) or coming soon Debian stable 4.0r4.
  • Install Firmware. (You will need to add non-free repository to /etc/apt/source.list

 aptitude install firmware-iwlwifi

Loading the iwl3945 / iwl4965 modules

  • The module should be loaded automatically by udev when the system starts.
  • Otherwise issue this command:

iwl4965

modprobe iwl4965

iwl3945

modprobe iwl3945

Using iwlWifi

Gnome Network Manager

  • Gnome- Double click on Network Connection (If you don't have an icon click on add to panel, then Select "Network Monitor" and click add)
  • Name: Wlan0
  • Click on configure
  • Select Wireless connection
  • Properties
  • Pick a network, add a password, select dhcp and click ok
  • You should be connected.
  • Alternatively, for those who prefer using ifup/ifdown from the command line, I used the following stanza in /etc/network/interfaces/:

iface wlan0 inet dhcp
  pre-up ip link set wlan0 up
  wireless_essid MakeTeaNotWar

Note the magic pre-up line, which I needed to make the card associate with the access point. As a bonus, with this stanza the interface works after an S3 resume (i.e. suspend/resume to RAM)!

Using wpa, wpa2

[:Manual-Howto#head-6fdd87d329e68a583e5fde32c6b21e460e5541a5: Using wpa_supplicant via wpa, wpa2]

Interfaces

Once the module is loaded, ip a should show two interfaces (wlan0 is the "main" one).

  • 3: wmaster0: <BROADCAST,MULTICAST,UP,10000> mtu 1500 qdisc ieee80211 qlen 1000
        link/ieee802.11 00:13:e8:70:69:fb brd ff:ff:ff:ff:ff:ff
    4: wlan0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc pfifo_fast qlen 1000
        link/ether 00:13:e8:70:69:fb brd ff:ff:ff:ff:ff:ff

Switching from ipw3945 to iwl3945

  • Install as explained above.
  • Check for the line generated by udev for ipw3945 in /etc/udev/rules.d/z25_persistent-net.rules. If it is there, remove it (more explanation in "Common problems and errors" below).
  • Optionally, change the configuration in /etc/network/interfaces by replacing eth2 (or whatever the old name for wireless interface is) with wlan0.
  • Reboot into the new kernel.
  • Verify that wireless networking is functional.
  • Remove the ipw3945-modules-* and ipw3945d packages.

Common problems and errors

Another symptom is that Network-manager don't handle the wireless card.

/var/log/syslog may show :

kernel: iwl3945: Intel(R) PRO/Wireless 3945ABG/BG Network Connection driver for Linux, 0.1.15ks
kernel: iwl3945: Copyright(c) 2003-2007 Intel Corporation
kernel: ACPI: PCI Interrupt 0000:03:00.0[A] -> GSI 17 (level, low) -> IRQ 22
kernel: PCI: Setting latency timer of device 0000:03:00.0 to 64
kernel: iwl3945: Detected Intel PRO/Wireless 3945ABG Network Connection
kernel: iwl3945: Tunable channels: 13 802.11bg, 23 802.11a channels
kernel: wmaster0: Selected rate control algorithm 'iwl-3945-rs'
kernel: net eth2: device_rename: sysfs_create_symlink failed (-17)
kernel: udev: renamed network interface wmaster0 to eth2
kernel: net wlan0_rename: device_rename: sysfs_create_symlink failed (-17)
  • This may occur if you had used ipw3945 module before.

Resolution

in /etc/udev/rules.d/z25_persistent-net.rules remove the line like

# PCI device 0x8086:0x4227 (ipw3945)
SUBSYSTEM=="net", DRIVERS=="?*", ATTRS{address}=="00:13:02:4c:12:12", NAME="eth2"

then remove the module and re-insert it.

rmmod iwl3945
modprobe iwl3945

in /etc/udev/rules.d/z25_persistent-net.rules you should now have a line like :

# PCI device 0x8086:0x4227 (iwl3945)
SUBSYSTEM=="net", DRIVERS=="?*", ATTR{address}=="00:13:02:4c:12:12", ATTR{type}=="1", NAME="wlan0"

Card does not associate to the access point

If the card accepts the essid, for example, by doing

iwconfig wlan0 essid YourESSID

but does not associate to the access point even when no encryption is needed: The driver seems to need the interface to be in the up state when it gets the essid. So first do

ip link set wlan0 up

then set the essid as before.

If the card still does not associate to the access point even with essid and encryption keys set, try

iwconfig wlan0 ap any

Identify wireless card

Running  lspci -nn  should list one of :

03:00.0 Network controller [0280]: Intel Corporation PRO/Wireless 3945ABG Network Connection [8086:4222] (rev 02)

or

03:00.0 Network controller [0280]: Intel Corporation PRO/Wireless 3945ABG Network Connection [8086:4227]

or

03:00.0 Network controller [0280]: Intel Corporation PRO/Wireless 4965 AG or AGN Network Connection [8086:4229]

or

03:00.0 Network controller [0280]: Intel Corporation PRO/Wireless 4965 AG or AGN Network Connection [8086:4230]

See also

[http://nanonanonano.net/linux/debian/iwlwifi How to use iwlwifi with etch and an older kernel]