Meaningfulness of "iwi0: could not allocate firmware DMA memory"
Parv
parv at pair.com
Fri Feb 10 22:14:03 PST 2006
I am using iwi driver (loaded as a module) from net/iwi-firmware for
Intel 2200BG wireless on IBM Thinkpad T42 (2373-5TU) running FreeBSD
6-STABLE (Feb 3 2006). Connection is provided by Linksys WRT54G
(version 4).
Before putting the laptop to sleep, i "stop" the driver/firmware &
after resuming i "start" it (via script given at the end). I have to
"reset" the iwi interface when a message about TKIP ICV mismatch is
printed at least more than once (Linksys's MAC address is munged) ...
Feb 10 15:25:40 holestein kernel: iwi0: [Li:nk:sy:sW:RT:54] TKIP ICV mismatch on decrypt
This email is about the messages emitted regarding failure to load
iwi firmware, similar to the following (Intel 2200BG's address is
munged) ...
Feb 10 23:04:18 holestein kernel: pci2:2:0: reprobing on driver added
Feb 10 23:04:18 holestein kernel: iwi0: <Intel(R) PRO/Wireless 2200BG> mem 0xc0214000-0xc0214fff irq 11 at device 2.0 on pci2
Feb 10 23:04:18 holestein kernel: pcib2: iwi0 requested memory range 0xc0214000-0xc0214fff: good
Feb 10 23:04:18 holestein kernel: iwi0: bpf attached
Feb 10 23:04:18 holestein kernel: iwi0: Ethernet address: In:te:l2:20:00:BG
Feb 10 23:04:18 holestein kernel: iwi0: bpf attached
Feb 10 23:04:18 holestein kernel: iwi0: bpf attached
Feb 10 23:04:18 holestein kernel: iwi0: [MPSAFE]
Feb 10 23:04:18 holestein kernel: iwi0: 11b rates: 1Mbps 2Mbps 5.5Mbps 11Mbps
Feb 10 23:04:18 holestein kernel: iwi0: 11g rates: 1Mbps 2Mbps 5.5Mbps 11Mbps 6Mbps 9Mbps 12Mbps 18Mbps 24Mbps 36Mbps 48Mbps 54Mbps
Feb 10 23:04:18 holestein kernel: iwi0: could not allocate firmware DMA memory
Feb 10 23:04:18 holestein kernel: iwi0: could not load main firmware
Feb 10 23:04:18 holestein kernel: iwi0: could not allocate firmware DMA memory
Feb 10 23:04:18 holestein kernel: iwi0: could not load main firmware
Feb 10 23:04:18 holestein kernel: iwi0: _ieee80211_crypto_delkey: NONE keyix 65535 flags 0x3 rsc 0 tsc 0 len 0
Feb 10 23:04:18 holestein last message repeated 3 times
Feb 10 23:04:18 holestein kernel: iwi0: could not allocate firmware DMA memory
Feb 10 23:04:18 holestein kernel: iwi0: could not load main firmware
Feb 10 23:04:30 holestein kernel: iwi0: _ieee80211_crypto_delkey: NONE keyix 65535 flags 0x3 rsc 0 tsc 0 len 0
Feb 10 23:04:30 holestein kernel: iwi0: link state changed to UP
Feb 10 23:04:30 holestein kernel: iwi0: ieee80211_crypto_newkey: no h/w support for cipher TKIP, falling back to s/w
... and yet the connection is established (in this case after 12
seconds). Does "iwicontrol -k" really not kill the firmware? If the
firmware could not be loaded, how come a working connection is
established eventually?
Following is the script which is use to start|reset|stop the iwi
module|driver|interface ...
#!/bin/sh
DEBUG=
set_debug()
{
local debug_crypto=0x10000000
local debug_any=-1
local current=$debug_crypto
[ -z "$DEBUG" ] \
&& sysctl net.wlan.debug=$current \
&& sysctl net.wlan.0.debug=$current
DEBUG=1
}
load_module_firmware()
{
kldload if_iwi
iwicontrol iwi0 -d /boot/firmware -m bss
iwicontrol iwi0 -r
set_debug
}
set_iwi_route()
{
ifconfig iwi0 down && ifconfig iwi0 delete
ifconfig iwi0 mode 11g
route flush
ifconfig iwi0 inet 192.168.2.103/24
route add default 192.168.2.1
}
start_iwi()
{
ifconfig iwi0 ssid 'some-ssid' up
wpa_supplicant -B -i iwi0 -c /etc/wpa_supplicant.conf
sleep 2
# Reload ipf rules.
ipf.sh restart
set_debug
}
stop_iwi()
{
killall wpa_supplicant
ifconfig iwi0 down && ifconfig iwi0 delete
iwicontrol -i iwi0 -k
iwicontrol -i iwi0 -k
iwicontrol -i iwi0 -k
kldunload if_iwi
}
set -x
case "$1" in
stop* | kill* | unload* )
stop_iwi
;;
reset* | restart* )
wpa_cli terminate
start_iwi
;;
start* | load* )
load_module_firmware
set_iwi_route
start_iwi
;;
esac
date
- Parv
--
More information about the freebsd-mobile
mailing list