WLAN-Karte mit TI-Chip ACX100 unter Linux
Aus BraLUG-Wiki
Nach langem Probieren ist es mir gelungen eine WLAN-Karte mit TI-Chip ACX100 unter Linux zum Laufen zu bewegen.
Speziell habe ich eine WLAN-Karte WC-PCI von Pheenet. Diese Beschreibung sollte aber auch auf andere Karten (z.B. DWL520+) mit diesem Chip übertragbar sein.
Mit folgenden Schritten kam ich zum Erfolg:
- Download des TAR-Archives aus dem ACX100-Projekt http://acx100.sourceforge.net/
- desweiteren werden Binärdateien mit der Firmware der WLAN-Karte benötigt (WLANGEN.BIN, RADIO0d.BIN und RADIO11.BIN). Entweder man findet diese Dateien auf einer Windows-Installation unter der die Karte läuft, oder besorgt sich diese aus dem Internet (ftp://ftp.dlink.com/Wireless/dwl520+/Driver/dwl520+_driver_307.zip oder http://www.houseofcraig.net/acx100_1.9.8b_firmware.tar.gz). Ich habe die Dateien aus dem zweiten Link verwendet.
- das ACX100-Archive entpackt man in ein Verzeichnis (z.B. acx100). Die Firmware-Dateien kopiert man in das dort angelegte Unterverzeichnis firmware.
- nun muss das acx100-Kernelmodul mittles gcc kompiliert werden (die Kernelheader-Dateien müssen installiert sein). Dazu wechselt man in das Verzeichnis, in dem man die Treiber-Quellen abgelegt hat (z.B. acx100) -> make config -> make driver. Nach fehlerfreier Übersetzung sollte im Unterverzeichnis src u.a. das Modul acx100_pci.o vorhanden sein.
- mittels insmod (und als root) kann jetzt probiert werden, ob das Modul funktioniert (wir stehen noch im Verzeichnis acx100): insmod src/acx100_pci.o firmware_dir=/absoluter_pfad_zur_Firmware
- im Syslog oder via dmesg kann überprüft werden, ob es funktioniert hat...
- wenn diese Hürden genommen wurden, steht einem erfolgreichen WLAN-en nichts mehr im Weg. Im Unterverzeichnis scripts stehen zum Konfigurieren, Starten und Stoppen der WLAN-Karte zwei Scripts zur Verfügung (start_net und stop_net), die auf die eigenen Belange angpaßt werden müssen (iwconfig-Parameter, ifconfig-Parameter und route) und mit denen man die Karte starten und stoppen kann. (Ich habe mir eigene, einfachere, Scripts dazu geschrieben...)
- um nicht immer manuell die WLAN-Karte starten und stoppen zu müssen, ist es bequemer dieses innerhalb der Systeminitialisierung einzubinden...
- ein Hinweis, ich hatte Probleme beim shutdown, wenn nicht vorher das acx100-Kernelmodul entladen wurde.
Kommentare:
Markus Kusserow Datum unbekannt |
fuer suse linux nutzer:
nach installation der kernel-quellen in das verzeichnis /usr/src/linux wechseln und "make cloneconfig dep" eingeben (besonders wichtig bei athlon), sonst kann es zu problemen beim laden des treibers kommen. um die karte mit yast zu laden muss man die datei acx100_pci.o, die im verzeichnis src liegt, in das verzeichnis /lib/modules/{kernelversion}/kernel/drivers/net/wirless kopieren und danach die datei /etc/modules.conf oder fals vorhanden /etc/modules.conf.local anpassen. /etc/modules.conf.local: alias wlan0 acx100_pci options acx100_pci firmware_dir=/pfad/zur/firmware anschliessend noch "depmod -a" eingeben. die fehlermeldung "... Unresolved symboles in .../acx100_pci.o" kann ignoriert werden. so jetzt kann die karte mit yast konfiguriert werden. yast --> network devices --> network card --> configure... network device: wireless module name: acx100_pci pcmcia: aktivieren --> wireless settings einstellungen vornehmen (falls noetig) und ok --> next ip-adresse eingeben, wenn karte nicht ueber dhcp betrieben wird, next --> finish. das wars. :) |
Claudia Neumann 05.11.2007 |
Kompilierung unter Kerneln > 2.6:
Um das Kernelmodul zu kompilieren, muß nicht der gesamte Kernel neu kompiliert werden. Bei installierten Kernel-Header- Dateien kann man das Kernelmodul einfach folgendermaßen kompilieren: make -C /lib/modules/`uname -r`/build M=`pwd` und installieren mit make -C /lib/modules/`uname -r`/build M=`pwd` modules_install anschließend noch ein depmod -ae und man kann mit modprobe acx das Kernelmodul testweise von Hand laden, um zu sehen, ob Fehlermeldungen ausgegeben werden. make config funktionierte bei mir bei den neueren Versionen der acx-Sourcen nicht. |