PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : ipw2200 ieee80211 modprobe schlägt fehl



Windläufer
04.10.06, 17:30
Hi

ich bin am verzweifeln mit meiner WLAN Karte.

Ich besitze eine Acer TravelMate 8005.
System: Gentoo 2006.1
Kernel: gentoo-sources-2.6.17-r8

Ich habe mir schon die HOWTO's auf den Laptop Sites angeschaut
Ebenso habe ich diese (http://gentoo-wiki.com/HARDWARE_ipw2200) versucht. Auch Eure (http://www.linuxforen.de/forums/showthread.php?t=150333) Beschreibung hat mir leider nicht weitergeholfen.

Ich habe versucht sowohl die im Kernel integrierten Treiber als auch eigene kompilate zu verwenden beides Mal bin ich gescheitert und zwar meldet mir das ieee80211 folgendes:


modprobe ieee80211
WARNING: Error inserting ieee80211_crypt (/lib/modules/2.6.17-gentoo-r8/kernel/net/ieee80211/ieee80211_crypt.ko): Invalid module format
FATAL: Error inserting ieee80211 (/lib/modules/2.6.17-gentoo-r8/net/ieee80211/ieee80211.ko): Invalid module format

und dmesg:

dmesg | grep ieee80211
ieee80211: 802.11 data/management/control stack, git-1.1.7
ieee80211: Copyright (C) 2004-2005 Intel Corporation <jketreno@linux.intel.com>
ieee80211_crypt: registered algorithm 'NULL'
ieee80211_crypt: exports duplicate symbol ieee80211_crypt_deinit_entries (owned by kernel)
ieee80211: exports duplicate symbol alloc_ieee80211 (owned by kernel)
ieee80211_crypt: exports duplicate symbol ieee80211_crypt_deinit_entries (owned by kernel)
ieee80211: exports duplicate symbol alloc_ieee80211 (owned by kernel)
ieee80211_crypt: exports duplicate symbol ieee80211_crypt_deinit_entries (owned by kernel)
ieee80211: exports duplicate symbol alloc_ieee80211 (owned by kernel)

dmesg | grep ipw2200
ipw2200: Intel(R) PRO/Wireless 2200/2915 Network Driver, git-1.1.1
ipw2200: Copyright(c) 2003-2006 Intel Corporation
ipw2200: Detected Intel PRO/Wireless 2200BG Network Connection
ipw2200: ipw2200-bss.fw request_firmware failed: Reason -2
ipw2200: Unable to load firmware: -2
ipw2200: failed to register network device
ipw2200: probe of 0000:02:04.0 failed with error -5

Denn acerhk hab ich installiert, modprobe funktioniert auch. Aber leider habe ich keine Plan wie ich testen kann ob es auch wirklich funktioniert.

Falls ich nocht etwas was nicht hinreichend beschrieben habe, lasst es mich wissen. Und vielleicht hat ja jemand eine Idee was ich vielleicht übersehen haben könnte. Oder total falsch gemacht habe.

Mfg
Windläufer

Rain_maker
04.10.06, 17:37
ipw2200: Detected Intel PRO/Wireless 2200BG Network Connection
ipw2200: ipw2200-bss.fw request_firmware failed: Reason -2
ipw2200: Unable to load firmware: -2
ipw2200: failed to register network device
ipw2200: probe of 0000:02:04.0 failed with error -5

Firmware vergessen?

http://ipw2200.sourceforge.net/firmware.php

Greetz,

RM

Windläufer
05.10.06, 14:46
Also wenn /lib/firmware der richtig Ort für Version 3 ist. Dann nicht.

Windläufer

Rain_maker
05.10.06, 14:57
Das hier auch gemacht?


Trouble Loading Firmware 2

If you get the following:

ipw2200: Detected Intel PRO/Wireless 2200BG Network Connection
ipw2200: ipw2200-bss.fw request_firmware failed: Reason -2
ipw2200: Unable to load firmware: -2
ipw2200: failed to register network device
ACPI: PCI interrupt for device 0000:03:03.0 disabled
ipw2200: probe of 0000:03:03.0 failed with error -5

for me is UDEV 087 working fine. But I needed to add one rule-which I found in docs for ipw2100 (thx to dunay/Eric)(It's extremely important that you compile the ipw2200 support as a module, otherwhise it won't work)

here is a fix for udev thanks to Eric at http://www.openthought.org/blosxom.cgi/Blog


It's completely fixable, you just have to tell udev how to load firmware.

To solve it, you need to add a rule to udev. In the dir /etc/udev/rules.d, I created the file '999-firmware.rules' (it has to run last). In that file, I added this line:

ACTION=="add", SUBSYSTEM=="firmware", RUN+="/sbin/firmware_helper"

I am using udev 100 and instead of the line above i had to add

ACTION=="add", SUBSYSTEM=="firmware", RUN+="/lib/udev/firmware.sh"

If your system doesn't have firmware_helper, you'll have to get it from the udev source. It's just a single .c file in the 'extras' dir. Compile udev with:

make EXTRAS=extras/firmware

And it'll compile everything for you... but all you need is firmware_helper. Just copy it to /sbin, or /usr/local/sbin, or where ever you like (making sure that the line you added to 999-firmware.rules matches), and you're set.

Now rmmod ipw2200 and the ieee80211* modules, reinsmod, and you're set (no need to reboot or restart anything).


ls -ls /lib/firmware/ergibt?

Greetz,

RM

Windläufer
05.10.06, 22:02
Hi,

also ich habe es jetzt nochmals gemacht um einfach sicher zu sein das ich hier keinen Fehler gemacht habe.
Geht leider aber immer noch nicht.


ls -al /lib/firmware/
total 588
drwxr-xr-x 2 root root 4096 Oct 4 21:39 .
drwxr-xr-x 10 root root 4096 Oct 5 08:57 ..
-rw-r--r-- 1 root root 12007 Oct 5 03:45 LICENSE.ipw2200-fw
-rw-r--r-- 1 root root 191142 Oct 5 03:45 ipw2200-bss.fw
-rw-r--r-- 1 root root 185660 Oct 5 03:45 ipw2200-ibss.fw
-rw-r--r-- 1 root root 187836 Oct 5 03:45 ipw2200-sniffer.fw


Gruß
Windläufer

Windläufer
06.10.06, 21:03
Hi,

also ich komme so langsam weiter.
Was hatte ich falsch gemacht:

1. Ich hatte ieee80211 Generic .... als Modul im Kernel, muss aber fix sein.
2. Außerdem hatte noch Überreste in /lib/modules -> habe den kompletten Inhalt gelöscht und die Module neu installiert "make modules_install"

Jetzt gehts an das Firmware Problem ;)

Gruß
Windläufer

Rain_maker
06.10.06, 21:48
Ich kenne mich mit den Gen-kerneln nicht aus, aber bei einem Vanilla-Kernel ist eigentlich alles schon dabei und muss nicht extern kompiliert werden:


ls -lR /lib/modules/`uname -r`|egrep 'ieee80211|ipw'
-rw-r--r-- 1 root root 95386 2006-09-20 13:31 ipw2100.ko
-rw-r--r-- 1 root root 114506 2006-09-20 13:31 ipw2200.ko
-rw-r--r-- 1 root root 14330 2006-09-20 13:31 ipw.ko
drwxr-xr-x 3 root root 4096 2006-09-20 13:31 ieee80211
/lib/modules/2.6.18/kernel/net/ieee80211:
-rw-r--r-- 1 root root 10797 2006-09-20 13:31 ieee80211_crypt_ccmp.ko
-rw-r--r-- 1 root root 9913 2006-09-20 13:31 ieee80211_crypt.ko
-rw-r--r-- 1 root root 14086 2006-09-20 13:31 ieee80211_crypt_tkip.ko
-rw-r--r-- 1 root root 8093 2006-09-20 13:31 ieee80211_crypt_wep.ko
-rw-r--r-- 1 root root 40729 2006-09-20 13:31 ieee80211.ko
uname -r
2.6.18

Hier mal meine Config zu diesen Stichpunkten ipw und ieee80211


cat /boot/config-2.6.18|egrep -i 'ipw|ieee80211'
CONFIG_IEEE80211=m
# CONFIG_IEEE80211_DEBUG is not set
CONFIG_IEEE80211_CRYPT_WEP=m
CONFIG_IEEE80211_CRYPT_CCMP=m
CONFIG_IEEE80211_CRYPT_TKIP=m
CONFIG_IEEE80211_SOFTMAC=m
# CONFIG_IEEE80211_SOFTMAC_DEBUG is not set
CONFIG_IPW2100=m
CONFIG_IPW2100_MONITOR=y
# CONFIG_IPW2100_DEBUG is not set
CONFIG_IPW2200=m
CONFIG_IPW2200_MONITOR=y
CONFIG_IPW_QOS=y
# CONFIG_IPW2200_DEBUG is not set
CONFIG_USB_SERIAL_IPW=m

Auf meinem Laptop (SuSE 10.0) mit SuSE-Kernel 2.6.13-15.12-default und einem Vanilla, dessen config auch von einem 2.6.17er stammt und dann per cloneconfig übernommen wurde, funktioniert die Centrino-Karte einwandfrei, wobei ich sogar die Firmware "doppelt" habe.

Eine ältere Version, welche dann verwendet wird, wenn ich den SuSE-Kernel (2.6.13er) boote und die identische Firmware, wie Du sie hast, welche dann bei Verwendung des selbstgebauten Vanilla-Kernels zum Einsatz kommt.

Ich musste nur die neuere Firmware parallel zur alten in /lib/firmware kopieren (Filenamen sind unterschiedlich, also kommt es auch zu keinem Konflikt) damit die Karte auch mit dem neuen Kernel lief.

Vielleicht hilft Dir das ein wenig weiter.

Greetz,

RM

Windläufer
10.10.06, 20:32
Hi habe mal Deine Konfiguration getestet, nur mit Gentoo Sourcen, ging aber leider auch nicht.
Nun wollte ich das Ganze mal mit einem Orginalen Kernel probieren, und habe mein System leicht zerstört, naja muss das erst wieder richten bevor ich an diesem Problem wieder weiter arbeite. :))

Gruß
Windläufer

Jun!or
21.10.06, 16:46
Hi,

hast du die Firmware per emerge installiert? Das Paket heißt net-wireless/ipw2200-firmware und steht inzwischen in der Version 3.0 zur Verfügung.


hugo ~ # cat /usr/src/linux/.config|egrep -i 'ipw|ieee80211'
CONFIG_IEEE80211=m
# CONFIG_IEEE80211_DEBUG is not set
CONFIG_IEEE80211_CRYPT_WEP=m
CONFIG_IEEE80211_CRYPT_CCMP=m
CONFIG_IEEE80211_CRYPT_TKIP=m
# CONFIG_IEEE80211_SOFTMAC is not set
# CONFIG_IPW2100 is not set
CONFIG_IPW2200=m
CONFIG_IPW2200_MONITOR=y
CONFIG_IPW2200_RADIOTAP=y
CONFIG_IPW2200_PROMISCUOUS=y
# CONFIG_IPW2200_QOS is not set
# CONFIG_IPW2200_DEBUG is not set




/etc/modules.autoload.d/kernel2.6
---schnipp---
# WLAN
ipw2200
ieee80211
ieee80211_crypt_wep
ieee80211_crypt_ccmp
ieee80211_crypt_tkip
---schnapp---


Vielleicht hilft dir das weiter.

Ampheus
23.10.06, 22:53
http://de.gentoo-wiki.com/Ipw2200

Das sollte dir helfen.

frankpr
24.10.06, 06:51
1. Ich hatte ieee80211 Generic .... als Modul im Kernel, muss aber fix sein.
Nö, muß es nicht. Läuft als Modul super.
Firmware Loader (egal, ob als Modul oder fest) im Kernel?