Ok, I reinstalled driver 1.04 and firmware 2.3, making sure no old drivers of firmware are present.
The firmware loads normally when booting into Ubuntu, but... there is no connection. Checking the network connection told me DHCP had not been succesfull since there was no IP address. I set the interface to Static IP to force IP address and re-initialized the network with the commands:
Code:
sudo /sbin/modprobe -r ipw2200
sudo /sbin/modprobe ipw2200
sudo /etc/init.d/networking restart
sudo killall wpa_supplicant
sudo /usr/sbin/wpa_supplicant -B -i eth0 -c /etc/wpa_supplicant.conf -D ipw
Now, my network connection kept going up and down every few seconds: it does connect to my accesspoint, but not for long.
The messagelog shows:
Code:
ipw2200: Intel(R) PRO/Wireless 2200/2915 Network Driver, 1.0.4
ipw2200: Copyright(c) 2003-2004 Intel Corporation
ACPI: PCI interrupt 0000:01:07.0[A] -> GSI 5 (level, low) -> IRQ 5
ipw2200: Detected Intel PRO/Wireless 2200BG Network Connection
ieee80211: eth0: Unknown management packet: 0
ieee80211: eth0: Unknown management packet: 0
ieee80211: eth0: Unknown management packet: 0
Everytime the interface goes trough a disconnect/connect cycle, this last message is repeated.
Sometimes, between all the "Unknown management packet 0:" messages, a firmware error or some other network related message shows up too. This happened too with driver 1.03 but did not cause any problems with my connection. Just for reference:
Code:
ieee80211: eth0: Unknown management packet: 0
ieee80211: eth0: Unknown management packet: 0
TKIP: replay detected: STA=00:13:01:10:06:16 previous TSC 000000000000 received TSC 000000000000
TKIP: replay detected: STA=00:13:01:10:06:16 previous TSC 000000000000 received TSC 000000000000
ieee80211: eth0: Unknown management packet: 0
ieee80211: eth0: Unknown management packet: 0
ieee80211: eth0: Unknown management packet: 0
ieee80211: eth0: Unknown management packet: 0
ipw2200: Firmware error detected. Restarting.
ieee80211: eth0: Unknown management packet: 0
ieee80211: eth0: Unknown management packet: 0
Does anybody have a clue what is going on here?
Edit: I had a look in the ipw2200 code:
Code:
+void ieee80211_rx_mgt(struct ieee80211_device *ieee,
+ struct ieee80211_hdr *header,
+ struct ieee80211_rx_stats *stats)
+{
+ switch (WLAN_FC_GET_STYPE(header->frame_ctl)) {
+ case IEEE80211_STYPE_ASSOC_RESP:
+ IEEE80211_DEBUG_MGMT("received ASSOCIATION RESPONSE (%d)\n",
+ WLAN_FC_GET_STYPE(header->frame_ctl));
+ break;
+
+ case IEEE80211_STYPE_REASSOC_RESP:
+ IEEE80211_DEBUG_MGMT("received REASSOCIATION RESPONSE (%d)\n",
+ WLAN_FC_GET_STYPE(header->frame_ctl));
+ break;
+
Code:
+ case IEEE80211_STYPE_PROBE_RESP:
+ IEEE80211_DEBUG_MGMT("received PROBE RESPONSE (%d)\n",
+ WLAN_FC_GET_STYPE(header->frame_ctl));
+ IEEE80211_DEBUG_SCAN("Probe response\n");
+ ieee80211_process_probe_response(
+ ieee, (struct ieee80211_probe_response *)header, stats);
+ break;
+
+ case IEEE80211_STYPE_BEACON:
+ IEEE80211_DEBUG_MGMT("received BEACON (%d)\n",
+ WLAN_FC_GET_STYPE(header->frame_ctl));
+ IEEE80211_DEBUG_SCAN("Beacon\n");
+ ieee80211_process_probe_response(
+ ieee, (struct ieee80211_probe_response *)header, stats);
+ break;
+
+ default:
+ IEEE80211_DEBUG_MGMT("received UNKNOWN (%d)\n",
+ WLAN_FC_GET_STYPE(header->frame_ctl));
+ IEEE80211_WARNING("%s: Unknown management packet: %d\n",
+ ieee->dev->name,
+ WLAN_FC_GET_STYPE(header->frame_ctl));
+ break;
+ }
Apparently the driver cannot make up the signal type and defaults to "unknown". I have no idea what is causing this, I have not changed the setup of my accesspoint and/or WPA supplicant since upgrading from ipw version 1.03 to 1.04.
Anyway, it seems I am not alone:
http://article.gmane.org/gmane.linux...100.devel/5325
Edit 2: if I disable my WPA and set my accesspoint to "open" mode, the 1.04 driver works. I will try to reinstall WPA to see if that solves anything!
Bookmarks