2010-11-27 7 views
1

Ich möchte einen Hardwaretreiber für meinen i2c Beschleunigungssensor auf meinem Beagleboard-XM implementieren, ich möchte es beim Booten laden. Es gibt eine gute Menge an Ressourcen im Web, die mir helfen, mein Modul zu kompilieren, aber es fällt mir schwer, Informationen zum Laden meines Moduls beim Booten zu finden.Android Treibermodul booten

Es scheint, dass es zwei Initialisierungsskripts:

  • init.rc im Stammverzeichnis
  • init.goldfish.rc in System/etc

Diese Seite den Prozess der beschreibt Schreiben eines init.rc-Skripts, um eine benutzerdefinierte Initialisierung durchzuführen: http://source.android.com/porting/bring_up.html

aus früheren Untersuchungen Ich bin mir ziemlich sicher, dass die init.goldfish.rc i n system/etc ist für benutzerdefinierte board loading .. wo würde man goldfish mit dem namen der hardware in/proc/cpuinfo

Ich habe in diesen beiden Skripten geschaut, um zu sehen, wie andere Module beim Booten geladen wurden, aber die Einzige Sache, die geladen wird, ist die Konsole. Ich fühle mich, als würde ich hier etwas vermissen. Werden Ereignisse verwendet, um die Module zu erkennen und zu laden? Wenn ja Was sind die Auslöser für diese Ereignisse?

Jede Hilfe würde sehr geschätzt werden.

Dave

Antwort

1

Ich glaube, Sie auf die Veränderungen durch 0xdroid getan beziehen könnte: http://gitorious.org/0xdroid/vendor_0xlab/trees/master/beagleboard

Bitte die Dateien überprüfen: init.rc, init.omap3.rc, init.omap3.sh, und dann Sie sollten wissen, wie Sie den Initialisierungsprozess anpassen können. Sie müssen jedoch möglicherweise einen Geräteknoten im Quellcode "system/core/init/devices.c" hinzufügen, andernfalls wird er nicht automatisch angewendet.