• Willkommen im Linux Club - dem deutschsprachigen Supportforum für GNU/Linux. Registriere dich kostenlos, um alle Inhalte zu sehen und Fragen zu stellen.

Ralink Treiber selbst erstellen

Conax

Hacker
Auf der ralink Seite:
http://www.ralinktech.com/support.php?s=2

kann man sich die aktuellen wlan Linux treiber herunterladen.

Es wird nach E-Mail Adresse und Name gefragt es ist aber völlig egal welche Daten man dort einträgt.

So in meinem Fall habe ich die Datei RT3070_LinuxSTA_V2.3.0.1_20100208.tar.bz2 heruntergeladen und anschließend in folgendes Verzeichnis entpackt:

/home/stefan/src/RT3070_LinuxSTA_V2.3.0.1_20100208

So danach hab ich ein Blick ins Verzeichnis geworfen und mir die Datei README_STA_usb angeschaut.

So bei den Build instructions steht nur folgendes:

1) $tar -xvzf DPB_RT2870_Linux_STA_x.x.x.x.tgz
go to "./DPB_RT2870_Linux_STA_x.x.x.x" directory.

-So welche Datei ich da jetzt genau entpacken soll weiss ich nicht da ich keine habe die mit DFB....irgendwas beginnt. Ich bin jetzt mal davon ausgegangen es handelt sich um oben bereits erwähnten Schritt das man einfach das Archiv entpacken muss.

2) In Makefile
set the "MODE = STA" in Makefile and chose the TARGET to Linux by set "TARGET = LINUX"
define the linux kernel source include file path LINUX_SRC
modify to meet your need.

-Ich hab die "Makefile" Datei einfach mal mit einem Editor geöffnet.

Sie hat folgenden Inhalt:

RT28xx_MODE = STA

TARGET = LINUX

CHIPSET = 3070

#OS ABL - YES or NO
OSABL = NO

ifneq ($(TARGET),THREADX)
#RT28xx_DIR = home directory of RT28xx source code
RT28xx_DIR = $(shell pwd)
endif

RTMP_SRC_DIR = $(RT28xx_DIR)/RT$(CHIPSET)

#PLATFORM: Target platform
PLATFORM = PC
#PLATFORM = 5VT
#PLATFORM = IKANOS_V160
#PLATFORM = IKANOS_V180
#PLATFORM = SIGMA
#PLATFORM = SIGMA_8622
#PLATFORM = INIC
#PLATFORM = STAR
#PLATFORM = IXP
#PLATFORM = INF_TWINPASS
#PLATFORM = INF_DANUBE
#PLATFORM = INF_AR9
#PLATFORM = BRCM_6358
#PLATFORM = INF_AMAZON_SE
#PLATFORM = CAVM_OCTEON
#PLATFORM = CMPC
#PLATFORM = RALINK_2880
#PLATFORM = RALINK_3052
#PLATFORM = SMDK
#PLATFORM = RMI
#PLATFORM = RMI_64
#PLATFORM = KODAK_DC
#PLATFORM = DM6446
#PLATFORM = FREESCALE8377

#RELEASE Package
RELEASE = DPO


ifeq ($(TARGET),LINUX)
MAKE = make
endif

ifeq ($(TARGET), UCOS)
MAKE = make
endif
ifeq ($(TARGET),THREADX)
MAKE = gmake
endif

ifeq ($(PLATFORM),5VT)
LINUX_SRC = /project/stable/5vt/ralink-2860-sdk/linux-2.6.17
CROSS_COMPILE = /opt/crosstool/uClibc_v5te_le_gcc_4_1_1/bin/arm-linux-
endif

ifeq ($(PLATFORM),IKANOS_V160)
LINUX_SRC = /home/sample/projects/LX_2618_RG_5_3_00r4_SRC/linux-2.6.18
CROSS_COMPILE = mips-linux-
endif

ifeq ($(PLATFORM),IKANOS_V180)
LINUX_SRC = /home/sample/projects/LX_BSP_VX180_5_4_0r1_ALPHA_26DEC07/linux-2.6.18
CROSS_COMPILE = mips-linux-
endif
...... und so weiter

-also laut Anleitung "MODE = STA" und "TARGET = LINUX" was ja in der Datei schon so drin steht.

Obwohl da "RT28xx_MODE = STA" drin steht ob das jetzt das selbe ist weiss ich natürlich nicht.

bei punkt 2: define the linux kernel source include file path LINUX_SRC
weiss ich überhaupt nicht was die da wollen da zum einen öfters in der datei was von LINUX_SRC drinsteht.

Kann mir jemand sagen was man da machen soll?
 
A

Anonymous

Gast
ist wieder so ein automatisch erstelltes Paket für Deppen, die Konfigurationsdatei darin hat den falschen Namen. Zum Installieren habe ich sie mal umbenannt, ob der Inhalt für diesen Chip so natürlich richtig ist ? wissen die Götter oder die Entwickler.
Code:
tar -xjf RT3070_LinuxSTA_V2.3.0.1_20100208.tar.bz2
cd RT3070_LinuxSTA_V2.3.0.1_20100208
make
cp RT2870STA.dat RT3070STA.dat
make install
ob er funktioniert keine Ahnung kann ich nicht test, laden lässt er sich jedenfalls
Code:
modprobe rt3070sta

Wenn du Probleme hast dann sind mit großer Wahrscheinlichkeit entweder die Pakete make gcc und/oder der Kernelsource nicht installiert bzw nicht konfiguriert siehe zB
http://www.linux-club.de/viewtopic.php?f=21&t=98811

robi
 
OP
C

Conax

Hacker
danke für deine Hilfe.

Bei mir meckert er irgendwie rum:

linux-gbqd:/home/stefan/src/RT3070_LinuxSTA_V2.3.0.1_20100208 # modprobe rt3070sta
FATAL: Error inserting rt3070sta (/lib/modules/2.6.31.12-0.1-default/kernel/drivers/net/wireless/rt3070sta.ko): Unknown symbol in module, or unknown parameter (see dmesg)
linux-gbqd:/home/stefan/src/RT3070_LinuxSTA_V2.3.0.1_20100208 #

Nachm neustart erkennt es den wlan stick nicht mehr.
Vorher hatte es ihn zwar erkannt aber das ganze lief überhaupt nicht stabil.
 
A

Anonymous

Gast
Schau mal auf denen ihren Seiten für welchen Kernel dieser Treiber überhaupt gedacht ist. Habe es auf einem recht altem Kernel gemacht und habe dort auch schon eine Warung das verwendetet Funktionen demnächst nicht mehr unterstützt werden da sie aus einem nicht-GPL Modul kommen.

Symbol usb_deregister is being used by a non-GPL module, which will not be allowed in the future.
Please see the file Documentation/feature-removal-schedule.txt in the kernel source tree for more details.

Nachm neustart erkennt es den wlan stick nicht mehr.
gehe in das Verzeichnis des Treibers von vorhin und mach dort ein
Code:
make uninstall
Danach noch einmal dein gesamtes Kernelpaket aktualisieren lassen, möglich das ein gleichnaminges Modul vom deinem Kernel mit dem selbst installierten überschrieben wurde.


robi
 
OP
C

Conax

Hacker
Danke für deine Hilfe.

Jetzt ist der alte Treiber wieder da der läuft zwar aber wie erwähnt mehr schlecht als recht sowohl im monitor mode als auch im promiscuous mode.

Bei beiden ist mir nach paar Minuten das komplette System eingefroren.

Ich hab mich schon umgeschaut hab aber nur da bisher informationen zu bekommen wie man das ding wohl zum laufen bekommt (ob das dann auch im promiscuous mode einwandfrei läuft keine Ahnung)

http://www.wardriving-forum.de/forum/showthread.php?t=67312&page=26

(Seite 26)

Da hat einer ne Nachricht gepostet wie man das mit dem Treiber hinbekommen soll:

Debian testing squeeze 32-Bit

Kernel Version: 2.6.33-wl

Da am Treiber wieder einiges weiterentwickelt wurde habe ich nochmal eine neue Version kompilert. Letze Änderung: Thu, 11 Mar 2010 11:14:0

Links:
http://rapidshare.com/users/5XTL4C
http://rapidshare.com/files/354030780/rt2870.bin

Installation:
dpkg -i ...
updated-initramfs -k 2.6.33-wl -c
update-grub
mv rt2870.bin /lib/firmware

-Tja Problem ich benutze weder Debian noch habe ich hier ein 32 Bit System laufen. Die Installationsanleitung nützt mir ja auch nicht viel da Sie für ein debian system ist.

Ach menno jetzt liegt der Stick schon fast zwei Wochen hier rum und ich bring ihn einfach nicht zum laufen.
Ich hab ja die Hoffnung das gefixte Treiber im zukünftigen Kernel drin sind hab momentan den 2.6.31.12-0.1-default x86_64 drauf. Tja wann mir hier openSUSE 11.2 neues Kernelupdate anbietet steht wohl momentan ebenfalls in den Sternen genauso ob in einer zukünftigen Kernelversion der Treiber gefixt wird.

Ich will halt nicht unbedingt ein halbes Jahr warten um auf Kernel zu spekulieren der dann den Treiber gefixt hat.
 
Oben