WLAN-Karten mit zd1211-zd1211b-Chipsatz

Aus Linupedia.org
Wechseln zu: Navigation, Suche

WLAN

WLAN-Karten mit zd1211/zd1211b-Chipsatz

Dieses HowTo beschreibt die Treiberinstallation für WLAN-Adapter mit zd1211/zd1211b-Chipsatz unter SuSE 10.1 und openSUSE 10.2.

Dabei geht es unter openSUSE 10.2 vor allem auch um mögliche Alternativen, falls der, im Standardkernel enthaltenen Treiber zd1211rw, nicht richtig funktioniert.

Für SuSE Linux 10.1 und openSUSE 10.2 finden sich - sofern der zd1211rw nicht funktioniert - passende RPM-Pakete im Downloadbereich des pc-forum24.de.

Hinweis:

Bisher gibt es dort allerdings "nur" Pakete für 32-Bit Installationen.

Für ein 64-Bit System können allerdings die entsprechenden Pakete selbst aus dem src.rpm erzeugt werden.

Dies gilt z.B. auch, wenn für die eigene Kernelversion keine passenden Treiber vorhanden sind.

Siehe: Anmerkungen


Firmware installieren

Hierzu stehen drei Pakete zur Verfügung, wobei zunächst die neuste Version versucht werden sollte:

PC-Forum24.de > Downloads > SuSE 10.2 > WLAN > RPM > noarch

zd1211-firmware 1.1-1
zd1211-firmware 1.2-1
zd1211-firmware 1.3-1


Funktionstest (unter openSUSE 10.2)

Unter openSUSE 10.2 kann man nun versuchen, ob der Stick bereits funktioniert, das ist aber leider nicht immer der Fall.

Auf jeden Fall sollten in einer zweiten Konsole als root die Kernelausgaben beobachtet werden:

su -
<root-Passwort eingeben - Es werden keine *** o.ä. angezeigt>
tail -f /var/log/messages

Nun folgende Befehle ausführen:

su -
<root-Passwort eingeben - Es werden keine *** o.ä. angezeigt>
rcnetwork stop
modprobe -r zd1211rw
modprobe zd1211rw
rcnetwork start
iwconfig

In der Überwachungskonsole dürfen keine Fehlermeldungen auftauchen, die sich auf fehlende Firmware beziehen (failed to load firmware o.ä.).

Sollte die Ausgabe von iwconfig eine Karte mit wireless Extension anzeigen, kann diese nun mit Yast eingerichtet werden und die restlichen Schritte sind in diesem Fall nicht mehr nötig.


Installation des zd1211/zd1211b Treibers

Gilt für SuSE Linux 10.1 und openSUSE 10.2, falls der zd1211rw nicht funktioniert.

Zunächst muss ermittelt werden, welcher der beiden Treiber für den eigenen Stick der richtige ist.

lsusb

zeigt sämtlichen angeschlossenen USB-Geräte an.

Wichtig ist dabei die USB-ID, die in etwa so aussehen wird.

Bus 00X Device 00X: ID 1234:5678 *IrgendeinName*


Welcher Treiber für welche ID der richtige ist, findet man hier:

Hinweis:

Die Notation unterscheidet sich von der USB-ID, im Endeffekt muß man die "0x" ignorieren und kann sich dann die ID zusammensetzen.


#ifdef ZD1211B
{ USB_DEVICE(0x0053, 0x5301) },
{ USB_DEVICE(0x0053, 0x5302) },
{ USB_DEVICE(0x050d, 0x4050) },
{ USB_DEVICE(0x050d, 0x705c) },
{ USB_DEVICE(0x0586, 0x340f) },
{ USB_DEVICE(0x079b, 0x0062) },
{ USB_DEVICE(0x083a, 0x4505) },
{ USB_DEVICE(0x083a, 0xe501) },
{ USB_DEVICE(0x0ace, 0x1215) },
{ USB_DEVICE(0x0ace, 0xa215) },
{ USB_DEVICE(0x0baf, 0x0121) },
{ USB_DEVICE(0x0cde, 0x001a) },
{ USB_DEVICE(0x0df6, 0x9075) },
{ USB_DEVICE(0x0f88, 0x3014) },
{ USB_DEVICE(0x1233, 0x0471) },
{ USB_DEVICE(0x157e, 0x300d) },
{ USB_DEVICE(0x1582, 0x6003) },
#elif defined(ZD1211)
{ USB_DEVICE(0x0105, 0x145f) },
{ USB_DEVICE(0x0586, 0x3401) },
{ USB_DEVICE(0x0586, 0x3409) },
{ USB_DEVICE(0x0675, 0x0550) },
{ USB_DEVICE(0x079b, 0x004a) },
{ USB_DEVICE(0x07b8, 0x6001) },
{ USB_DEVICE(0x0ace, 0x1211) },
{ USB_DEVICE(0x0ace, 0xa211) },
{ USB_DEVICE(0x0b05, 0x170c) },
{ USB_DEVICE(0x0b3b, 0x1630) },
{ USB_DEVICE(0x0b3b, 0x5630) },
{ USB_DEVICE(0x0b3b, 0x6630) },
{ USB_DEVICE(0x0cde, 0x0011) },
{ USB_DEVICE(0x0df6, 0x9071) },
{ USB_DEVICE(0x126f, 0xa006) },
{ USB_DEVICE(0x129b, 0x1666) },
{ USB_DEVICE(0x1435, 0x0711) },
{ USB_DEVICE(0x14ea, 0xab13) },
{ USB_DEVICE(0x157e, 0x300a) },
{ USB_DEVICE(0x157e, 0x300b) },
{ USB_DEVICE(0x157e, 0x3204) },
{ USB_DEVICE(0x2019, 0xc007) },
{ USB_DEVICE(0x2019, 0xc008) },
{ USB_DEVICE(0x2019, 0xc009) },
{ USB_DEVICE(0x5173, 0x1809) },
{ USB_DEVICE(0x6891, 0xa727) },
#endif
Beispiel: '

Bei einer USB-ID mit dem Wert 079b:0062, ist der benötigt den Treiber zd1211b, weil diese ID

{ USB_DEVICE(0x079b, 0x0062) }

dort zugeordnet ist (blau), würde man z.B. die USB-ID 2019:c009 angezeigt bekommen, so wäre der Treiber zd1211 der richtige, denn die ID

{ USB_DEVICE(0x2019, 0xc009) },

ist dem Abschnitt zu zd1211 zugeordnet (rot).


Nachdem man den passenden Treiber ermittelt hat, kann man diesen nun installieren.

Folgende RPM Pakete stehen dazu zur Verfügung:

zd1211(b)-driver-kmp-*Kernelflavor*-*Kernelversion*


SuSE Linux 10.1

Kernelversion 2.6.16.27-0.6 oder 2.6.16.27-0.9

PC-Forum24.de > Downloads > SuSE 10.1 > WLan > RPM


openSUSE 10.2

Kernelversionen 2.6.18.2-34 oder 2.6.18.8-0.1

PC-Forum24.de > Downloads > SuSE 10.2 > WLAN > RPM


Es muss das passende Paket zum laufenden Kernel bezüglich Kernelversion und Kernelflavor installiert werden, das Kernelflavor ist das, was bei

uname -r

nach der Versionsnummer des laufenden Kernels (z.B. 2.6.18.2-34) ausgegeben wird (z.B. -default oder -bigsmp).


Hinweis:

Wer eine andere Kernelversion installiert hat, sollte sich die Anmerkungen am Ende des Artilels zum Thema rebuild ansehen.


Blacklisten des zd1211rw-Treibers (unter openSUSE 10.2)

Zunächst legt man ein Backup der Datei

/etc/modprobe.d/blacklist

an.

Danach öffnet man die Datei

/etc/modprobe.d/blacklist

als root mit einem Texteditor und fügt folgende beide Zeilen hinten an.

blacklist zd1211rw
blacklist ieee80211softmac


Stoppen des Netzwerks, Entladen der Module, Laden der Module und Neustart des Netzwerks

su -
<root-Passwort eingeben - Es werden keine *** o.ä. angezeigt>
rcnetwork stop
modprobe -r zd1211rw
modprobe -r ieee80211softmac

Nun lädt man den passenden Kerneltreiber:

modprobe zd1211

bzw.

modprobe zd1211b

(je nachdem, welchen Treiber man benötigt und installiert hat).

rcnetwork start
iwconfig

Nun sollte ein neues Interface angezeigt werden, welches man über Yast einrichten kann.


Anmerkungen

Bei Problemen sollten zunächst _alle_ drei Firmwareversionen getestet werden.


Rebuild des Treibers aus dem SRC-RPM

Für den Fall, dass

  • nicht der SuSE-Standard-Kernel verwendet wird,
  • (open)SUSE in der 64-Bit-Version installiert ist,
  • die o.g. Treiber aus anderen Gründen nicht laufen,

gibt es noch die Möglichkeit aus dem src.rpm selbst ein passendes RPM für den jeweiligen Kernel zu erstellen.


Die entsprechenden SRC-RPMs findet man unter:

openSUSE 10.2: PC-Forum24.de > Downloads > SuSE 10.2 > WLAN > SRC

SuSE Linux 10.1: PC-Forum24.de > Downloads > SuSE 10.1 > WLan > SRC


Eine Anleitung zum "rebuilden" eines SRC-RPMs gibt es hier:

http://www.pc-forum24.de/howtos/2882-rpm-umbau-aus-einem-src-rpm-mit-rpmbuild-beispiele-wlan-kmp-fcdslsl.html

Das Ganze muß dann nur für das jweils benötigte src.rpm

zd1211-driver-r83-rm.0.src.rpm

bzw.

zd1211b-driver-r83-rm.0.src.rpm

durchgeführt werden.

Welches der beiden Pakete benötigt und wie diese Information ermittelt wird, ist weiter oben beschreiben.


Links

http://zd1211.wiki.sourceforge.net/



Editorentabelle

Autoren: b3ll3roph0n, Rain_Maker


Ergänzungsautoren:


Lektor:


Designer:


Fotograf:


Dank an:


Wenn Du möchtest, dass Deine Arbeit wie die des Ursprungsautoren gewürdigt wird, trage Dich in dieser Tabelle entsprechend ein.


Zurück zu WLAN