Ich habe bis vor ein paar Monaten auf einem ARCHOS 101G9 ArchlinuxARM betrieben, was sogar besser funktionierte als erwartet. Als ich dieses Vorhaben in Angriff nahm, hatte ich vom Linux-Bootprozess auch so gut wie keine Ahnung — dementsprechend brauchte ich länger als ein halbes Jahr, bevor ich erstmals eine virtuelle Konsole auf dem Tablet bedienen konnte. Und das obwohl ARCHOS freundlicherweise sogar einen Kernel samt Konfiguration
für das Device anbietet. Allerdings benötigte die Konfiguration doch einige Anpassungen, die ich nicht mehr im Kopf habe — abgesehen davon, dass ARCHOS den Schalter
CONFIG_VT abgeschaltet hatte. Ich
wusste damals nicht einmal, dass man die virtuelle Konsole abschalten konnte. Bis ich
das rausgefunden hatte, sind Monate vergangen. Einen aktuelleren Kernel als den 3.0er von ARCHOS konnte ich auf dem Device nie ans Laufen bekommen; ein Vergleich der Kernel-Sources mit dem Vanilla-Kernel ergab, dass ARCHOS ein paar dutzend Dateien mit Assembler-Code hinzugefügt hatte. Das war für mich so gut wie closed source, denn mit Assembler will ich mich nicht auseinandersetzen. Viel zu hardwarespezifisch.
Im Grunde läuft es so: Du musst dir von der ARCHOS-Website das
Developer Kit für dein Modell herunterladen; das ist ein von ARCHOS hochoffiziell signiertes Update, das du per Rescue-Modus auf das Tablet einspielen musst (beim Einschalten VolumeDown+Power gedrückt halten und rechtzeitig (das erfordert ganz schön Timing!) wieder loslassen). Dafür schließt du dann das Tablet per USB-Kabel an den Rechner an, wo es als Speichergerät erkannt wird, lädst das Entwicklerkit drauf und folgst den Anweisungen auf dem Tablet. Irgendwann rebootet das Tablet und hat dann den Bootloader offen (
Achtung: Im Gegensatz zum typischen Vorgehen auf anderen Embedded Devices brauchst du dich hier
nicht mit uboot auseinandersetzen!). Von jetzt an kannst du im Rescue-Mode über einen neuen Menüpunkt einen beliebigen Kernel (der <8MiB sein muss, wie ich durch Ausprobieren herausfand) und ein beliebiges Initramfs auf das Device laden (der Kernel muss mit gzip komprimiert sein). Wie schon erwähnt ist der einzige funktionierende Kernel der von mir oben verlinkte von ARCHOS. Den zu bauen ist ein kleines Kunststück für sich, deren Buildumgebung kompiliert zwischendurch mal eben den GCC, LibC und was man sonst noch alles für Kreuzkompilation eines Kernels so braucht. Allerdings scheint ARCHOS mit einem Debian-System zu kompilieren, gelegentlich wird python als Python 2 u.Ä. erwartet. Auch lief die vollständige Kompilation bei mir nie durch, aber zumindest der Kernel war tatsächlich vorhanden und funktionstüchtig (wenn man an
CONFIG_VT gedacht hat...).
Das Initramfs sollte so verändert werden, dass es / von der Mikro-SD-Karte einhängt, auf der du zuvor unter
/usr/lib/modules unbedingt die Kernelmodule installieren musst. Danach brauchst du noch einen Xorg-Treiber. Der einzige, der je bei mir funktionierte, war
xf86-input-mtev-meego, zu Multitouch hat es aber nie gereicht.
Einiges von dem, was ich hier beschrieben habe, habe ich versucht in
diesem Repository zu vereinfachen, aber dann kam der Tag, an dem mir das Tablet vom Tisch fiel und Glasbruch erlitt. Und zur Reparatur habe ich mich bisher nicht durchringen können.
Vale,
Quintus