USB - Seriell Treiber in DS-Mod

stargazer

Neuer User
Mitglied seit
23 Nov 2004
Beiträge
18
Punkte für Reaktionen
0
Punkte
0
Hi.
Du brauchst erst mal die Toolchain. ("make toolchain" im ds-mod Verzeichnis)
Denn du musst das Kernel-Modul kompilieren.
Dazu musst du das Modul in den Kernel kopieren und den neuesten Patch reinmachen.
http://www.keyspan.com/support/linux/files/previousversions/rev2003jan31/
Patch
Dann musst du das ganze noch so einfügen, dass es auch mitkompiliert wird...

Vielleicht ist es einfacher, wenn das jemand für dich versucht, der sich damit auskennt. ;-)
Mal sehen, ob ich heute abend dazu komme, oder ob sich jemand anderes erbarmt. :mrgreen:
Es könnte natürlich ein Problem geben, da diese Sourcen nicht für unsere Kernelversion sind.

MfG Oliver
 
Irgendwo im Board habe ich gelesen, daß AVM an einem USB-Treiber arbeitet, der den Fritz-Host-Port transparent auf einem PC nachbildet. Dann kannst Du das direkt über diesen PC machen und brauchst keine Patches in der Fritz dafür.
Also einfach noch ein wenig warten und hoffen, daß die Meldung keine Ente war ;)
 
Ist die Vorgehensweise zum Kernel kompilieren richtig?

make menuconfig - Box und Pakete auswählen
make toolchain
make libs
make kernel-dirclean
make kernel-menuconfig - vorhandene Keyspan Treiber unter USB Support .... auswählen
make kernel-precompiled
make - Image erstellen

wobei ich bei make kernel-precompiled zwei Fehler

Code:
gcc -Wall -Wstrict-prototypes -O2 -fomit-frame-pointer -o scripts/split-include scripts/split-include.c
scripts/split-include include/linux/autoconf.h include/config
scripts/split-include include/linux/nsp.h include/config
mipsel-unknown-linux-gnu-gcc -I /home/test/ds025/ds-0.2.5/source/ref-ohio-8mb/kernel/kernel_ohio-8mb_build/kernel/linux-2.4.17_mvl21/include/asm/gcc -D__KERNEL__ -I/home/test/ds025/ds-0.2.5/source/ref-ohio-8mb/kernel/kernel_ohio-8mb_build/kernel/linux-2.4.17_mvl21/include -Wall -Wstrict-prototypes -Wno-trigraphs -Os -fno-strict-aliasing -fno-common -fomit-frame-pointer  -G 0 -mno-abicalls -fno-pic -march=4kc -Wa,--trap -nostdinc -pipe   -c -o init/main.o init/main.c
make[2]: mipsel-unknown-linux-gnu-gcc: Kommando nicht gefunden
make[2]: *** [init/main.o] Fehler 127
make[2]: Leaving directory `/home/test/ds025/ds-0.2.5/source/ref-ohio-8mb/kernel/kernel_ohio-8mb_build/kernel/linux-2.4.17_mvl21'
make[1]: *** [create_kernel] Fehler 2
make[1]: Leaving directory `/home/test/ds025/ds-0.2.5/source/ref-ohio-8mb/kernel/kernel_ohio-8mb_build'
make: *** [source/ref-ohio-8mb/kernel/kernel_ohio-8mb_build/kernel/linux-2.4.17_mvl21/ram_zimage.bin] Fehler 2

angezeigt bekomme.

Wie binde ich die neuesten Keyspan Treiber ein? Einfach die vorhandenen unter

ds-0.2.5/source/crosstool-0.42/build/mipsel-unknown-linux-gnu/gcc-3.3.2-glibc-2.3.2/linux-2.4.26/drivers/usb/serial

überschreiben?
Und wie installiere ich den zusätzlichen Patch ?
 
Zuletzt bearbeitet:
Keiner eine Idee ??
Mir würde es auch schon reichen, wenn ich den vorhandenen keyspan_usa19_fw.h kompiliert bekomme, um ihn anschließen per FTP auf die Box zu schieben, und mit insmod zu aktivieren. Aber irgendwie funktioniert das make unter Suse 9.3 nicht.
 
Natürlich hab ich eine Idee, aber keine Zeit. :mrgreen:
Das hat mich jetzt 2 Stunden gekostet...
Testen kann ich das Modul mangels passender Fritz nicht.
Code:
/var/mod/root # lsmod
Module                  Size  Used by    Tainted: P
keyspan                29488   0 (unused)
usbserial              20988   0 [keyspan]
usbcore                61600   0 [keyspan usbserial]
kdsldmod              433996   4
isdn_fbox             523700   4
capi                   23768  16
kernelcapi             33740   6 [isdn_fbox capi]
capiutil               15840   0 [kernelcapi]
capifs                  4608   0 [capi]
tiatm                  89116   1
avalanche_usb          40004   1
avalanche_vlynq        14480   0 (unused)
avalanche_cpmac        82804   1
avm                    42544  30 [kdsldmod tiatm avalanche_usb avalanche_cpmac]
/var/mod/root #

MfG Oliver
 
Zuletzt bearbeitet:
Danke für deine Mühe Oliver.
Leider bringt der Keyspan Treiber die Fehlermeldung

Code:
/var/tmp # insmod keyspan.o
insmod: not an ELF file
insmod: Could not load the module: Success
/var/tmp #

Ist es sooo kompliziert den Treiber,bzw. den Kernel zu kompilieren ?? Kannst du zu deiner Vorgehensweise noch ein paar Sätze schreiben, würde es gerne selbst machen.
 
Was hast du denn mit dem File aus dem Anhang gemacht?

Ja, es ist kompliziert. Wenn du eine toolchain am Laufen hast (z.B. die aus dem dsmod). Dann können wir weitersehen...
Hm, die toolchain scheint ja schon fertig zu sein. Du musst wahrscheinlich noch den Compiler in den Pfad nehmen. (toolchain/kernel/bin)

MfG Oliver
 
Dein File keyspan.tar.gz nach /var/tmp/ kopiert, per tar xzvf keyspan.tar.gz entpackt, usbserial.o mit insmod gestartet und anschließend versucht per insmod keyspan.o nachzuladen.
Wie nehm ich den Compiler in den Pfad ?? Sind dies irgendwelche gcc Files o.ä. ?
 
Du musst den Pfad in deiner .bashrc mit "..was auch immer/ds-0.2.x/toolchain/kernel/bin" ergänzen.

Second try, da ist mir wohl beim packen ein kleiner Fehler unterlaufen. ;-)

MfG Oliver
 

Anhänge

  • keyspan.tar.gz
    26.7 KB · Aufrufe: 30
Der Keyspan Treiber funktioniert nun einwandfrei, vielen Dank.
Der Pfad /home/test/ds025/ds-0.2.5/toolchain/kernel/bin existiert bei mir nicht. Unter /home/test/ds025/ds-0.2.5/toolchain gibt es nur ein build und make Unterverzeichnis. Wo liegt der Compiler?
Soll der Pfad in /etc/bash.bashrc mit PATH=${PATH}:/home/test/ds025/ds-0.2.5/toolchain/kernel/bin eingebunden werden ?
 
Zuletzt bearbeitet:
Hast du `make toolchain' ausgeführt?

Wenn ja, dann ist das mit einem Fehler abgebrochen. Mach doc einfach nochmal `make toolchain' und poste den Fehler.

Mfg,
danisahne
 
Code:
( cd source/crosstool-0.42; \
        unset LD_LIBRARY_PATH; \
        QUIET_EXTRACTIONS="y"; export QUIET_EXTRACTIONS; set -ex; TARBALLS_DIR="/home/test/ds025/ds-0.2.5/dl"; RESULT_TOP="/home/test/ds025/ds-0.2.5/toolchain/build"; GCC_LANGUAGES="c"; export TARBALLS_DIR RESULT_TOP GCC_LANGUAGES; eval `cat mipsel.dat gcc-3.3.2-glibc-2.3.2.dat` \
        sh all.sh --nounpack --notest; \
);
+ TARBALLS_DIR=/home/test/ds025/ds-0.2.5/dl
+ RESULT_TOP=/home/test/ds025/ds-0.2.5/toolchain/build
+ GCC_LANGUAGES=c
+ export TARBALLS_DIR RESULT_TOP GCC_LANGUAGES
++ cat mipsel.dat gcc-3.3.2-glibc-2.3.2.dat
+ eval 'KERNELCONFIG=`pwd`/mipsel.config' TARGET=mipsel-unknown-linux-gnu 'TARGET_CFLAGS="-O2' '-finline-limit=10000"' BINUTILS_DIR=binutils-2.15 GCC_DIR=gcc-3.3.2 GLIBC_DIR=glibc-2.3.2 LINUX_DIR=linux-2.4.26 GLIBCTHREADS_FILENAME=glibc-linuxthreads-2.3.2 sh all.sh --nounpack --notest
+++ pwd
++ KERNELCONFIG=/home/test/ds025/ds-0.2.5/source/crosstool-0.42/mipsel.config
++ TARGET=mipsel-unknown-linux-gnu
++ TARGET_CFLAGS='-O2 -finline-limit=10000'
++ BINUTILS_DIR=binutils-2.15
++ GCC_DIR=gcc-3.3.2
++ GLIBC_DIR=glibc-2.3.2
++ LINUX_DIR=linux-2.4.26
++ GLIBCTHREADS_FILENAME=glibc-linuxthreads-2.3.2
++ sh all.sh --nounpack --notest
DEJAGNU not set, so not running any regression tests
GCC_EXTRA_CONFIG not set, so not passing any extra options to gcc's configure script
GLIBC_ADDON_OPTIONS not set, so building all glibc add-on's
+ TOOLCOMBO=gcc-3.3.2-glibc-2.3.2
++ pwd
+ BUILD_DIR=/home/test/ds025/ds-0.2.5/source/crosstool-0.42/build/mipsel-unknown-linux-gnu/gcc-3.3.2-glibc-2.3.2
++ pwd
+ TOP_DIR=/home/test/ds025/ds-0.2.5/source/crosstool-0.42
+ test -z ''
+ SRC_DIR=/home/test/ds025/ds-0.2.5/source/crosstool-0.42/build/mipsel-unknown-linux-gnu/gcc-3.3.2-glibc-2.3.2
+ echo 'SRC_DIR not set, so source tarballs will be unpacked in the build directory'
SRC_DIR not set, so source tarballs will be unpacked in the build directory
+ case x$PREFIX in
+ case x$USER in
+ test -w /tmp
+ TARBALLS_DIR=/home/test/ds025/ds-0.2.5/dl
+ RESULT_TOP=/home/test/ds025/ds-0.2.5/toolchain/build
+ PREFIX=/home/test/ds025/ds-0.2.5/toolchain/build/gcc-3.3.2-glibc-2.3.2/mipsel-unknown-linux-gnu
+ export TOOLCOMBO
+ export PREFIX
+ export BUILD_DIR
+ export SRC_DIR
+ export TARBALLS_DIR
+ export TOP_DIR
+ '[' 2 -gt 0 ']'
+ case "$1" in
+ opt_no_unpack=1
+ shift
+ '[' 1 -gt 0 ']'
+ case "$1" in
+ opt_no_test=1
+ shift
+ '[' 0 -gt 0 ']'
+ test '' = 1
+ test 1 = ''
+ test '' = ''
+ '[' -d /home/test/ds025/ds-0.2.5/toolchain/build/gcc-3.3.2-glibc-2.3.2/mipsel-unknown-linux-gnu ']'
+ mv /home/test/ds025/ds-0.2.5/toolchain/build/gcc-3.3.2-glibc-2.3.2/mipsel-unknown-linux-gnu /home/test/ds025/ds-0.2.5/toolchain/build/gcc-3.3.2-glibc-2.3.2/mipsel-unknown-linux-gnu.del.16804
+ rm -rf /home/test/ds025/ds-0.2.5/toolchain/build/gcc-3.3.2-glibc-2.3.2/mipsel-unknown-linux-gnu.del.16804
+ mkdir -p /home/test/ds025/ds-0.2.5/toolchain/build/gcc-3.3.2-glibc-2.3.2/mipsel-unknown-linux-gnu
+ mkdir -p /home/test/ds025/ds-0.2.5/source/crosstool-0.42/build/mipsel-unknown-linux-gnu/gcc-3.3.2-glibc-2.3.2
+ cd /home/test/ds025/ds-0.2.5/source/crosstool-0.42/build/mipsel-unknown-linux-gnu/gcc-3.3.2-glibc-2.3.2
+ test '' = ''
+ sh /home/test/ds025/ds-0.2.5/source/crosstool-0.42/crosstool.sh
GCC_CORE_DIR not set, so using gcc-3.3.2 for bootstrap compiler
BINUTILS_EXTRA_CONFIG not set, so not passing any extra options to binutils' configure script
GCC_EXTRA_CONFIG not set, so not passing any extra options to gcc's configure script
GLIBC_EXTRA_CONFIG not set, so not passing any extra options to glibc's configure script
GLIBC_EXTRA_ENV not set, so not passing any extra environment variables to glibc's configure script
GLIBC_EXTRA_CC_ARGS not set, so not passing any extra options to gcc when building glibc
EXTRA_TARGET_CFLAGS not set, so not passing any extra cflags to gcc when building glibc
USE_SYSROOT not set, so not configuring with --with-sysroot
GCC_BUILD not set, assuming BUILD=output of config.guess
GCC_HOST not set, assuming HOST=BUILD
SHARED_MODE not set, so defaulting to --enable-shared
GLIBC_ADDON_OPTIONS not set, so guessing addons from GLIBCTHREADS_FILENAME and GLIBCCRYPT_FILENAME
/home/test/ds025/ds-0.2.5/source/crosstool-0.42/crosstool.sh: line 110: bison: command not found
crosstool: You don't have bison installed
make: *** [source/crosstool-0.42/.installed] Fehler 1

O.K. da scheint wohl der GNUParsergenerator zu fehlen. ?
 
Installiere mal bison und schau gleich nach, ob flex und texinfo installiert sind.
 
flex und texinfo sind auch nicht installiert. Werde mich heute Abend nochmals darum kümmern.
 
Aehm ich grab das hier nochmal aus, funktioniert das mit dem usb-> seriell denn nun? Ueber welches Device laesst sich der USB Konverter ansprechen. Wo kann ich diesen Konverter kaufen?


Gruss

Mode
 
Hat jemand mit dem FT232R von FTDI?

Hier der Link zu den Treibern:
http://www.ftdichip.com/FTDrivers.htm

Es gibt Treiber fuer Linux, laufen diese auch auf der FBF? Falls ja wuerde ich ein Layout mit dem Chip fuer die FBF machen..

Gruss


Mode
 
mode schrieb:
Hat jemand mit dem FT232R von FTDI?

Hier der Link zu den Treibern:
http://www.ftdichip.com/FTDrivers.htm

Es gibt Treiber fuer Linux, laufen diese auch auf der FBF? Falls ja wuerde ich ein Layout mit dem Chip fuer die FBF machen..

Gruss


Mode

Hallo

Ich habe mir "ds-0.2.7" für die "Fritz!Box Fon 7170" selber compiliert.
Die Änderungen findest Du unter:

http://www.ip-phone-forum.de/showthread.php?t=107868

Das benötige Kernelmodul kann dann mit:

modprobe ftdi_sio

oder:

insmod usbserial
insmod ftdi_sio

geladen werden.

Einen USB - Seriell - Adapter ( ) gibt es z.B. bei Reichelt:

http://www.reichelt.de

unter der Bestellnummer:

USB2 SERIELL

Hersteller: DIGITUS
Artikelnummer des Herstellers: DA-70146
Preis: 11,90 Euro
Link des Herstellers: http://www.digitus.de/scripts/digdetail.asp?artnr=DA-70146

MfG Harald
 
Hallo Harald,

Verstehe ich das richtig, dass der Digitus USB-Seriell Adapter der bei Reichelt erhaeltlich ist, den FT232R von FTDI eingebaut hat und du daher einen Treiber dafuer hast?
Warum musstest du dann den DS Mod neu kompillieren?


Gruss

Mode
 
mode schrieb:
Hallo Harald,

Verstehe ich das richtig, dass der Digitus USB-Seriell Adapter der bei Reichelt erhaeltlich ist, den FT232R von FTDI eingebaut hat und du daher einen Treiber dafuer hast?
Warum musstest du dann den DS Mod neu kompillieren?


Gruss

Mode

Hallo Mode!

1. Es Stimmt das der Digutus USB-Seriell-Adapter auf dem FTDI-Chip basiert.
2. Standardmässig ist das Kernelmodul nicht bei DS Mod oder bei den
Kernelmodulen dabei. Deshalb mußte ich die Konfiguration von DS MOD etwas
erweitern, und alles neu kompilieren.
In den Kernelsourcen sind aber alle gängigen USB-Seriell-Treiber dabei.
3. Leider werden nur FritzBoxen mit USB-Host-Controller unterstützt. Die
"Fritz!Box Fon WLAN 7050" hat z.B. keinen USB-Host-Controller
(sieht man an der Buchse der FritzBox, Type B).

Gruß Harald
 
Holen Sie sich 3CX - völlig kostenlos!
Verbinden Sie Ihr Team und Ihre Kunden Telefonie Livechat Videokonferenzen

Gehostet oder selbst-verwaltet. Für bis zu 10 Nutzer dauerhaft kostenlos. Keine Kreditkartendetails erforderlich. Ohne Risiko testen.

3CX
Für diese E-Mail-Adresse besteht bereits ein 3CX-Konto. Sie werden zum Kundenportal weitergeleitet, wo Sie sich anmelden oder Ihr Passwort zurücksetzen können, falls Sie dieses vergessen haben.