iwlwifi is the wireless driver for Intel's current wireless chips. For older chips, there are other drivers:
- iwlegacy (for 3945, 4965)
- Station (client) mode
- IBSS (Ad-Hoc) mode
- AP mode (experimental; only on some devices/firmware versions)
- P2P (experimental; only on some devices/firmware versions)
- 802.11abgn (depending on the device)
The following devices are supported (since kernel version):
- Intel® Centrino® Wireless-N 100 (2.6.37)
- Intel® Centrino® Wireless-N 130 (2.6.37)
- Intel® Centrino® Advanced-N 6230 (2.6.36)
- Intel® Centrino® Wireless-N 1030 (2.6.36)
- Intel® Centrino® Advanced-N 6205 (2.6.35)
- Intel® Centrino® Wireless-N + WiMAX 6150 (2.6.30)
- Intel® Centrino® Advanced-N + WiMAX 6250 (2.6.30)
- Intel® Centrino® Ultimate-N 6300 (2.6.30)
- Intel® Centrino® Advanced-N 6200 (2.6.30)
- Intel® Centrino® Wireless-N 1000 (2.6.30)
Intel® Wireless WiFi 5150AGN (2.6.29)
Intel® Wireless WiFi 5100AGN, 5300AGN, and 5350AGN (2.6.27)
For technical support send email to <linux-wireless AT vger DOT kernel DOT org> and/or <ilw AT linux DOT intel DOT com>.
The firmware necessary to support the devices is distributed separately. The license can be found here: http://git.kernel.org/?p=linux/kernel/git/firmware/linux-firmware.git;a=blob_plain;f=LICENCE.iwlwifi_firmware;hb=HEAD
Note that many distributions ship the firmware, you could install the "linux-firmware" package or similar. If that doesn't work, or you need newer firmware, read on.
The driver loads the firmware using the kernel's firmware_class infrastructure. More information can be found under in the Documentation/firmware_class/README file in the kernel source. In order to function correctly the driver requires this to be enabled in your kernel. When you configure the kernel, you can find this option in the following location:
Device Drivers -> Generic Driver Options -> Userspace firmware loading support
You can determine if your kernel currently has firmware loader support by looking for the CONFIG_FW_LOADER definition on your kernel's .config file.
In addition to having the firmware_class support in your kernel, you must also have a working userspace infrastructure configured. The steps for installing and configuring this are very distribution specific and the tools differ, but distributions have this enabled.
Once you have the firmware loader in place (or if you aren't sure and you just want to try things to see if it works), you need to install the firmware file into the appropriate location.
Where that appropriate location is depends (again) on your system distribution. You can typically find this location by looking in the udev scripts of your distro, the default on most distributions is /lib/firmware.
Installation of the firmware is simply:
# cp iwlwifi-*.ucode /lib/firmware
You can now load the driver.
You can get the firmware from linux-firmware.git. The following table