IPW(4)
π ipw(4) β the manual page, but make it cute π
okay bestie, so we're doing the ipw(4) page today β that's the Kernel Interfaces Manual entry for this driver, if you were wondering where it lives. grab a strawberry drink π and let's go, because this is genuinely iconic hardware lore.
β¨ NAME β¨
ipw β the Intel PRO/Wireless 2100 IEEE 802.11a/b driver. yes, that's the whole name. she's lowkey modest like that. π
β¨ SYNOPSIS β¨
so there's two ways to get her in, and you gotta pick one. option one: compile the driver straight into the kernel. drop these lines into your kernel configuration file, fr fr:
device ipw
device ipwfw
device pci
device wlan
device firmware
option two: load her as a module at boot time instead. for that, you put this line in loader.conf(5):
if_ipw_load="YES"
but β and this is the part everyone forgets β in both cases you gotta put this line in loader.conf(5) too, to acknowledge the firmware license (peep the description below, iykyk):
legal.intel_ipw.license_ack=1
like, both. always. don't skip the license one, bestie, it's not optional. π«Ά
β¨ DESCRIPTION β¨
the ipw driver provides support for Intel PRO/Wireless 2100 802.11a/b wireless network devices in station, adhoc, and monitor mode operation. the way that's three whole modes. π
β οΈ okay important: only one virtual interface may be configured at any time. one. that's the limit. she's monogamous.
this driver requires the firmware built with the ipwfw module to work β no firmware, no wifi, no vibes.
and for the loaded firmware to be enabled for use, the license at /usr/share/doc/legal/intel_ipw.LICENSE must be agreed to by adding this line to loader.conf(5):
legal.intel_ipw.license_ack=1
for more info on configuring this device, go see ifconfig(8). she's the main character of configuration, honestly. π
β¨ HARDWARE β¨
the ipw driver provides support for the Intel PRO/Wireless 2100a/b MiniPCI network adapter. that's it. that's the one. slay. π
β¨ FILES β¨
/usr/share/doc/legal/intel_ipw.LICENSEβ the ipw firmware license. read it, ack it, love it. π
β¨ EXAMPLES β¨
bestie these are the actual commands, copy them exactly, don't get creative:
join an existing BSS network (i.e., connect to an access point):
ifconfig wlan create wlandev ipw0 inet 192.0.2.20/24
join a specific BSS network with network name my_net:
ifconfig wlan create wlandev ipw0 ssid my_net up
join a specific BSS network with 64-bit WEP encryption:
ifconfig wlan create wlandev ipw0 ssid my_net \
wepmode on wepkey 0x1234567890 weptxkey 1 up
join a specific BSS network with 128-bit WEP encryption:
ifconfig wlan create wlandev ipw0 wlanmode adhoc ssid my_net \
wepmode on wepkey 0x01020304050607080910111213 weptxkey 1
not me noticing the 128-bit one is the only one in wlanmode adhoc β read them carefully, she's sneaky like that. π
β¨ DIAGNOSTICS β¨
so when she starts talking in these messages, it's giving concern. read carefully:
ipw%d: device timeoutβ the driver will reset the hardware. this should not happen.ipw%d: firmware errorβ the onboard microcontroller crashes for some reason. the driver will reset the hardware. this should not happen.ipw%d: timeout waiting for firmware initialization to completeβ the onboard microcontroller failed to initialize in time. this should not happen.ipw%d: could not load firmware image '%s'β the driver failed to load the firmware image using thefirmware(9)subsystem. verify theipwfw(4)firmware module is installed and the license agreementloader(8)tunable has been set. π (hi, this is the one you'll actually get, and it's almost always the license tunable.)ipw%d: could not load microcodeβ an attempt to upload the microcode image to the onboard microcontroller failed. this should not happen.ipw%d: could not load firmwareβ an attempt to upload the firmware image to the onboard microcontroller failed. this should not happen.
𫢠so many "this should not happen" lines⦠and yet here we are. if you see one, it's a real problem, not a vibe check fail.
β¨ SEE ALSO β¨
ipwfw(4), pci(4), wlan(4), wlan_ccmp(4), wlan_tkip(4), wlan_wep(4), networking(7), ifconfig(8), wpa_supplicant(8)
the whole friend group, honestly. go read them, they're all slay. πβ¨
β¨ AUTHORS β¨
the original ipw driver was written by Damien Bergamini <damien.bergamini@free.fr>. king behavior, we stan. π
okay that's the whole page, no notes, you ate that. π
β¨ this one's from the Debian build, dated November 10, 2024, and yeah the page itself signs off as IPW(4) β so go forth, ack that license, and connect to my_net responsibly. π¦ π
π¦ where this page comes from
- freebsd 14.5: base 14.5
- freebsd 15.1: base 15.1
- nixpkgs unstable: source
- π 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