Hallo,
ich verwende ein Router-Linux basierend auf Fli4l mit Debian und dem Kernel 2.6.16.56. Auf dem Gerät läuft auch Asterisk mit einer Junghanns ISDN-Karte für die ich einen aktuellen Treiber brauche.
Für meinen Fli4L Router möchte ich also einen neueren ISDN-Treiber auf meinem normalen Debian Etch System kompilieren, da es auf dem minimalistischen System nicht geht. Deshalb habe ich mir die Kernel-Sourcen von Kernel.org geholt sowie den entsprechenden Gerätetreiber und alles schon im src-Verzeinis ausgepackt.
Den Kernel habe ich in /usr/src/linux-2.6.16.56 entpackt und einen entsprechenden link "linux" erzeugt. mit make menukonfig habe ich den kernel entsprechend konfiguriert und gebaut.
Der Herstellers der Karte (Junghanns) verlangt die folgende Synthax für die Erstellung des passenden Treibers.
Ich habe also mit
KVERS=2.6.16.56 KSRC=/usr/src/linux-2.6.16.56 ./install.sh
den Treiber qozap.ko erezugt und dieser liegt dann auch im entsprechenden Modules-Verzeichnis /lib/modules/2.6.16.56/misc/qozap.ko.
Es werden keine Fehler ausgegeben und alles sieht irgendwie super aus.
Danach habe ich die Treiberdatei auf meinen Fli4l Router kopiert und nun versuche ich diesen Treiber händisch zu laden.
insmod /lib/modules/2.6.16.56/kernel/misc/qozap.ko
und bekomme
insmod: cannot insert '/lib/modules/2.6.16.56/kernel/misc/qozap.ko': invalid module format (-1): Exec format error
zurück.
modprobe geht auch nicht.
Zuerst dachte ich das ich in der Kernelkonfiguration die falsche Prozessor-Architektur genommen habe. Ich habe jedoch schon 386, 486, 586 probiert.
cat /proc/version auf meiner Fli4l-Maschine für die der Treiber letztendlich ist bringt
Linux version 2.6.16.56 (fli4l@eisler) (gcc version 3.4.6 (Debian 3.4.6-5)) #1 Wed Apr 30 10:42:11 CEST 2008
Hat jemand eine Idee? Ich weiß nicht wo ich ansetzen soll. Bin für jeden noch so kleinen Tipp dankbar...
Grüße