www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik NGW100-Buildroot erstellt falsche Module


Autor: Jasper (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Guten Abend

Ich bschäftige mich schon etwas länger mit dem NGW100 um Linux und die 
AVR32'iger besser zu verstehen.
Doch seit zwei Tagen komme ich einfach nicht mehr weiter und hoffe ihr 
könnt mir dabei helfen. Mein Problem ist, dass ich es nicht schaffe ein 
Build zu erstellen, bei dem ich die von Buildroot kompilierten Module 
laden kann.
Meine bisherigen versuche ein Modul zu laden, endeten immer mit der 
Meldung:

"insmod: cannot insert 'Name_des_Moduls': invalid module formate"

Daraufhin habe ich ein Makefile gefunden, mit dem es mir möglich ist die 
Module einzeln zu kompilieren. Aber das muss doch auch direkt mit 
Buildroot funktionieren?!

Mein bisheriges Vorgehen:

make atngw100_defconfig
make
make linux26-menukonfig (Module auswählen)
make

Gruß Jasper

Autor: Peter Diener (pdiener) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ist denn der richtige Kernel auf dem NGW100? Also einer, der auch mit 
genau dieser Buildroot erstellt worden ist?

Grüße,

Peter

Autor: Jasper (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi

Klar ich hab das vom Buildroot erstellte Archiv auf die SD-Card entpackt 
und dann gebootet. Die Module die da drinnen sind müssten ja auch zum 
kernel passen.

Jasper

Autor: ... (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
vielleicht ne dumme Frage, aber bist du dir sicher, dass du auch von der 
SD-Karte gebootet hast?

Autor: Jasper (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Guten Morgen

Dass ich vom falschen Medium boote, kann ich ausschliesen, da ich:

1. alle Einstellungen auf der SD-Card vornehme und diese auch wirksam 
sind, und ich

2. Uboot auf SD umgestellt habe.

Trotzdem danke für deine Antwort

Jasper

Autor: ... (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
ich sitz jetzt nicht vor meinem Linux-Rechner, aber da ist in der 
Kernel-Config eine Einstellung die aktiviert sein muss um Module laden 
zu können.Sorry, aber auswendig hab ich die nicht mehr.

Autor: Jasper (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi

Ich hab ja im ersten Post schon geschrieben, dass ich von Hand 
kompilierte Module laden kann aber die vom Buildroot erstellten nicht. 
Das heißt ich prinzipiell ist es mir möglich Module zu laden, aber es 
sieht so aus, als würde Buildroot vielleicht gegen einen anderen Kernel 
(hab aber keinen anderen Installiert) kompilieren.

Jasper

Autor: ... (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Jasper schrieb:
> Ich hab ja im ersten Post schon geschrieben, dass ich von Hand
> kompilierte Module laden kann

Jasper schrieb:
> Daraufhin habe ich ein Makefile gefunden, mit dem es mir möglich ist die
> Module einzeln zu kompilieren.

mmh, sorry, das konnte ich daraus nicht entnehmen.

Welche Buildroot-Version nimmst du denn?

Autor: Jasper (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Die von Atmel v2.3.0

hab jetzt mal die offizielle Buildroot am laufen mal schauen was die 
macht.

Jasper

Autor: ... (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
in der Buildroot mailing list wurde das Problem schon besprochen:
http://lists.busybox.net/pipermail/buildroot/2010-...

Autor: ... (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Jasper schrieb:
> Die von Atmel v2.3.0

Die Version machte eigentlich keine Probleme.
Auf welchem Host arbeitest du?

Autor: Jasper (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
... schrieb:
> Auf welchem Host arbeitest du?

Ich hab Ubuntu 9.04 (32 Bit) am laufen und arbeite auf einem Notebook

Autor: Jasper (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hey

Ich wollte jetzt mal fragen, ob es euch wirklich möglich ist durch dass 
folgende Vorgehen einen Kernel und die dazugehörigen Module zu 
erstellen.

1. make atngw100_defconfig
2. make
3. make linux26-menuconfig (dort Module auswählen)
4. make
5. binaries/atngw100/rootfs.tar.bz2 auf SD-Card entpacken, fstab 
anpassen und booten
6. modprobe oder insmod für ein mitkompiliertes Module ausführen


Wenn ja dann müsste es doch bei mir am Host-System liegen, oder irre ich 
mich?

Viele Grüße
Jasper

Autor: Thilo Haala (thaala)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich habe ebenfalls Probleme damit einzelne Module hizuzunehmen, ob die 
nun statisch dazu gelinkt werden oder per Insmod. Die Buildroot 
menu/makefile funktionieren m.E. nur korrekt wenn Du den Mainstream 
nimmst.

Man kann dem OS aber einen Debuglevel mitgeben der detaillierte Ausgaben 
macht wenn Insmod aufgerufen wird. Den Befehl dazu habe ich aber im 
Moment nicht parat. Evtl. googlest Du mal danach Stichword Linux kernel 
debug level..

Gruß THaala

Autor: Jasper (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hey

Danke für deine Antwort, ich werd mal sehn was sich da finden lässt

Jasper

Autor: Thilo Haala (thaala)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
So - ich bin fündig gweorden.

Bei dem Output um den es mir geht handelt es sich um Ausgaben, die um 
Treiber - Modul mit printk getätigt werden.

Damit diese im Moment wenn Insmod funktionen des Treibers aufruft auch 
auf der Konsole erscheinen mußt due den Debug - Level des kernel 
erhöhen.

Das eght über folgende Zeile
 echo "5 4 1 7" > proc/sys/kernel/printk

Die Debug Level sind:
     #define KERN_EMERG   "<0>" /* system is unusable               */
     #define KERN_ALERT   "<1>" /* action must be taken immediately */
     #define KERN_CRIT    "<2>" /* critical conditions              */
     #define KERN_ERR     "<3>" /* error conditions                 */
     #define KERN_WARNING "<4>" /* warning conditions               */
     #define KERN_NOTICE  "<5>" /* normal but significant condition */
     #define KERN_INFO    "<6>" /* informational                    */
     #define KERN_DEBUG   "<7>" /* debug-level messages             */

Du musst jetzt noch (mindestens im Init - Aufruf deines Moduls)
nach printk scannen - und wenn keins vorhanden ist evtl selbst welche 
einsetzen.

Wenn das alles nichts nutzt ist der Output nicht interpretierbar für 
insmod. Evtl kein ELF - format oder so was...?

Hier noch ne weiter Hilfe zum Debugging :
http://www.xml.com/ldd/chapter/book/ch04.html

Gruß THaala

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.