Debian auf dem Oyo - erster Versuch

Geschrieben von MMind am Dienstag, 28. Dezember 2010 in Oyo

Mein Ziel ist ja immer noch ein echtes Debian mit X-Server auf dem Oyo zu betreiben. Gestern habe ich einen ersten relativ erfolgreichen Startversuch unternommen.

Vorbereitungen

Es sind einige Dinge einzurichten und auch einige Besonderheiten des Qisda-u-boots zu beachten.

Speichermedium

Benötigt wird eine MicroSD-Karte mit mindestens 2 Partitionen. Die erste sollte FAT-formatiert sein, da die mmcboot-Funktion unseres u-boot-Bootloaders scheinbar nur Kernel von einer FAT-Partition lädt. Die zweite, größere sollte dann ein etwas fortschrittlicheres Dateisystem enthalten. Ich wähle hier meist ext3. Es heißt zwar immer dass Dateisysteme mit Journaling-Funktion nicht für Flash-Speicher geeignet seien, da sie zu viele Schreibvorgänge erzeugen. Eine Untersuchung von Theodore Ts'o zeigt jedoch, dass der Overhead durch das Journal nicht so groß ist.

Basissystem

Weiterhin benötigt man auf alle Fälle ein Debian-Basisystem in der Geschmacksrichtung armel. Hier konnte ich mir behelfen indem ich einfach das funktionierende System von meinem Openmoko Freerunner kopiert habe. Dieses platziert man auf der zweiten Partition der SD-Karte.

Sollte das ganze später mal richtig funktionieren würde es sich anbieten das Installations-Skript aus dem pkg-fso-Debian-Projekt anzupassen. Das Skript ist momentan nur für Openmoko-Geräte gedacht, wird aus der originalen Firmware heraus aufgerufen und installiert ein Debian-Basissystem auf die SD-Karte, inklusive SSH-Daemon und dergleichen.

Kernel

An dieser Stelle habe ich erstmal den 2.6.21.5 von Thalia mit kleineren Modifikationen verwendet. Das Cross-Kompilieren eines Kernels habe ich ja bereits an anderer Stelle beschrieben.

Geändert sind dabei nur die Boot-Optionen und der zusätzlich aktivierte gadget-Ethernet-Treiber.

--- .config.old 2010-11-09 08:38:56.000000000 +0100
+++ .config     2010-12-27 15:56:43.000000000 +0100
@@ -278,7 +278,7 @@
 #
 CONFIG_ZBOOT_ROM_TEXT=0x0
 CONFIG_ZBOOT_ROM_BSS=0x0
-CONFIG_CMDLINE="root=/dev/mmcblk0p1 rootfstype=ext3 ro init=/linuxrc console=ttySAC0,115200"
+CONFIG_CMDLINE="root=/dev/mmcblk1p2 rootfstype=ext3 ro init=/sbin/init console=ttySAC0,115200"
 # CONFIG_XIP_KERNEL is not set
 # CONFIG_KEXEC is not set

@@ -1286,7 +1286,8 @@
 # CONFIG_USB_GADGET_DUMMY_HCD is not set
 CONFIG_USB_GADGET_DUALSPEED=y
 # CONFIG_USB_ZERO is not set
-# CONFIG_USB_ETH is not set
+CONFIG_USB_ETH=m
+CONFIG_USB_ETH_RNDIS=y
 CONFIG_USB_GADGETFS=m
 CONFIG_USB_FILE_STORAGE=m
 # CONFIG_USB_FILE_STORAGE_TEST is not set

Wichtig ist hier noch die Modul-abhänigigkeiten zu erzeugen. Ich habe mir hier mit einem chroot aus der Oyo-Firmware in mein Debian-System beholfen um das

depmod -a
auszuführen.

Zur Größe des Kernels ist zu sagen, dass er 1,5MB nicht überschreiten sollte. Nach dem was ich in cpu/s3c24xx/mmc.c in den u-boot-Quellen gefunden habe liest er nur diese Größe (1586688 Byte) von der SD-Karte. D.h. größere Kernel-Images werden Fehler produzieren da dort der restliche Teil fehlt. Die maximale Größe der Ramdisk-Datei liegt bei 2,4 MB (2607616 Byte).

Das Kernel-Image platzieren wir in qdutil/uzImage auf der ersten Partition der SD-Karte. Auch die qdutil/urootfs.img muss vorhanden sein. Sollte sie fehlen, weigert sich der u-boot den Kernel zu starten.

Der Start

Mit all diesen Vorbereitungen und den gedrückten Vor- und Zurück-Knöpfen beim Einschalten, startete das System erfolgreich und ich konnte mich per SSH über die USB-Ethernetverbindung anmelden. Da der Kernel aber so furchtbar alt ist, arbeitet dieser nicht mehr mit aktuellen udev-Versionen zusammen, sodass die Anzahl der Geräte in /dev sehr überschaubar waren.

Es geht also tendenziell erstmal nichts, aber es startet wenigsten schon mal. Als nächstes werde ich das ganze mal mit einem aktuellen Kernel versuchen.

Da der u-boot in allen Readern der Qisda-Familie gleich zu sein scheint trifft die oben beschriebene Prozedur nicht nur auf den Oyo sondern auch auf alle anderen Reader auf Qisda-Basis wie dem Asus DR-900 oder Sagem Binder alias Fnacbook zu


2 Kommentare für diesen Eintrag

Ansicht der Kommentare: Linear | Verschachtelt

Kommentar schreiben

Umschließende Sterne heben ein Wort hervor (*wort*), per _wort_ kann ein Wort unterstrichen werden.
Standard-Text Smilies wie :-) und ;-) werden zu Bildern konvertiert.
Die angegebene E-Mail-Adresse wird nicht dargestellt, sondern nur für eventuelle Benachrichtigungen verwendet.

Um maschinelle und automatische Übertragung von Spamkommentaren zu verhindern, bitte die Zeichenfolge im dargestellten Bild in der Eingabemaske eintragen. Nur wenn die Zeichenfolge richtig eingegeben wurde, kann der Kommentar angenommen werden. Bitte beachten Sie, dass Ihr Browser Cookies unterstützen muss, um dieses Verfahren anzuwenden.
CAPTCHA

Suche

Nach Einträgen suchen in Outside the Walled Garden:

Das Gesuchte nicht gefunden? Gib einen Kommentar in einem Eintrag ab oder nimm per E-Mail Kontakt auf!