IWI(4)
π IWI(4) β like, the Intel PRO/Wireless driver, bestie β¨
Okay so real talk: this is iwi(4) from the Kernel Interfaces Manual section β the whole page is about a wireless driver and honestly it's giving vintage-tech-that-still-slaps. Sit down, grab a boba, and let's get into it π§
πΈ NAME πΈ
iwi β the Intel PRO/Wireless 2200BG/2225BG/2915ABG IEEE 802.11 network driver, no cap π
β¨ SYNOPSIS β¨
So there's two ways to get this driver living in your system. Option one: bake it right into the kernel by dropping these lines into your kernel configuration file:
device iwi
device iwifw
device pci
device wlan
device firmware
Or alternatively (iconic behaviour), load it as a module at boot time by putting this line in loader.conf(5):
if_iwi_load="YES"
But listen β in both cases, you gotta also put this line in loader.conf(5) to acknowledge the firmware license (more on that below, don't skip it π):
legal.intel_iwi.license_ack=1
π¦ DESCRIPTION π¦
The iwi driver provides support for Intel PRO/Wireless 2200BG/2225BG/2915ABG IEEE 802.11a/b/g wireless network devices in station, adhoc, and monitor mode operation. Only one virtual interface may be configured at any time. That's it. One. Don't push it π
This driver requires the firmware built with the iwifw module to work. And for the loaded firmware to actually be enabled for use, the license at /usr/share/doc/legal/intel_iwi.LICENSE must be agreed to by adding the following line to loader.conf(5):
legal.intel_iwi.license_ack=1
For more info on configuring this device, go check out ifconfig(8) β it's the main character of network config fr fr π
π HARDWARE π
The iwi driver supports these wireless network devices, and yes, this is the whole list:
- Intel PRO/Wireless 2200BG MiniPCI Network Connection
- Intel PRO/Wireless 2225BG PCI Network Connection
- Intel PRO/Wireless 2915ABG MiniPCI Network Connection
π FILES π
/usr/share/doc/legal/intel_iwi.LICENSEβ theiwifirmware license π
π EXAMPLES π
Okay this is the fun part, let's actually connect to stuff π«Ά
Join an existing BSS network (i.e., connect to an access point):
ifconfig wlan create wlandev iwi0 inet 192.0.2.20/24
Join a specific BSS network with network name my_net:
ifconfig wlan create wlandev iwi0 ssid my_net up
Join a specific BSS network with 64-bit WEP encryption:
ifconfig wlan create wlandev iwi0 ssid my_net \
wepmode on wepkey 0x1234567890 weptxkey 1 up
Join a specific BSS network with 128-bit WEP encryption:
ifconfig wlan create wlandev iwi0 wlanmode adhoc ssid my_net \
wepmode on wepkey 0x01020304050607080910111213 weptxkey 1
β DIAGNOSTICS β
These are the messages you might see, and what they mean. Some of these are straight up not supposed to happen, and the manual is very clear about that π
iwi%d: device timeoutβ The driver will reset the hardware. This should not happen.iwi%d: firmware errorβ The onboard microcontroller crashed for some reason. The driver will reset the hardware. This should not happen.iwi%d: timeout waiting for firmware initialization to completeβ The onboard microcontroller failed to initialize in time. This should not happen.iwi%d: could not load firmware image '%s'β The driver failed to load the firmware image using thefirmware(9)subsystem. Verify theiwifw(4)firmware module is installed and the license agreementloader(8)tunable has been set.iwi%d: could not load boot firmwareβ An attempt to upload the boot firmware image to the onboard microcontroller failed. This should not happen.iwi%d: could not load microcodeβ An attempt to upload the microcode image to the onboard microcontroller failed. This should not happen.iwi%d: could not load main firmwareβ An attempt to upload the main firmware image to the onboard microcontroller failed. This should not happen.
Lowkey, if you're seeing a bunch of "this should not happen" errors, that's your sign to vibe check your setup π«
π SEE ALSO π
iwifw(4), pci(4), wlan(4), wlan_ccmp(4), wlan_tkip(4), wlan_wep(4), networking(7), ifconfig(8), wpa_supplicant(8)
πΈ AUTHORS πΈ
The original iwi driver was written by Damien Bergamini <damien.bergamini@free.fr>. Respect the icon who built the thing π
And that's the whole page, bestie β mwah π this manual page was brought to you by Debian, dated November 10, 2024, and it ate, no crumbs. Go forth and connect β¨πΆ
π¦ where this page comes from
- freebsd 14.5: base 14.5
- freebsd 15.1: base 15.1
- π the page's license: BSD-2-Clause
- Copyright (c) 2004-2006 Damien Bergamini <damien.bergamini@free.fr>. All rights reserved
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms