« Ich will den Kapitalismus lieben... | Hauptseite | google-bashing reloaded »

22.10.07

rt2570.ko gepatcht

Wer in Ubuntu 7.10 seinen D-Link DWL G122 nicht mehr zum Laufen bekommt, ist wohl gezwungen, den Treiber (rt2570.ko) selber zu bauen.

Den Treiber im Paketbaum kann man vergessen, der tut unter dem Ubuntu-Kernel garnicht, weil der SMP ist und der Treiber mit einer Warnung abranzt. nosmp auf der Kernelkommandozeile lässt ACPI sofort abkacken.

Daher: Treiber von http://rt2x00.serialmonkey.com/ benutzen, oder? Fehlanzeige, der kompiliert nicht, weil er

1) irgendwelche Felder in structs benutzt (z.B. netdev) die nicht existieren
2) eine nicht vorhandene Variable (dev_base) benutzt.

Aber: ich bin ja nicht blöd und hab den Scheiß umgeschrieben, man muss folgende Änderungen machen:

Datei:Zeile
Ersetzung

rtusb_main.c:1905
for (device = first_net_device(); device != NULL; device = next_net_device(device))

rtusb_data.c:1777
skb->mac_header = skb->data;

Der Treiber kompiliert dann, ich weiß aber nicht, ob die Änderungen in rtusb_data.c so richtig sind!

Und: Man muss an die ESSID ein beliebiges Zeichen beim Zuweisen ranhängen (z.B. iwconfig rausb0 essid "my-EssIdx" bei essid "my-EssId"), da irgendwie das letzte Zeichen weggeschnitten wird.

Nur mal so zur Info.

Kommentare