BeagleBoard上でAndroidを起動させる

基礎から学ぶ 組み込みAndroidのCHAPTER 02を参考にすれば、BeagleBoard上でAndroid OSを起動するのは比較的簡単。
ただ、HanwhaのHM-TL10Tのディスプレイでは、画面が表示されないなどの問題があった。

Android OS Pre-built版のインストール

上述の書籍を参考にしながら、Texas Instrumentsが公開しているpre-built版のAndroid OSのイメージをインストールする。
作業は全てホストPC(Ubuntu 10.04)上で行った。
手順は、以下の通り:
1. Texas InstrumentsのWebページから、BeagleBoard向けのpre-built版Android OSをダウンロード
2. tarballを解凍

$ tar xvfz beagleboard-xm.tar.gz

3. microSDカード(2GB以上)をPCに挿入し、以下のコマンドを実行

$ cd beableboard-xm
$ LANG=C sudo ./mkmmc-android.sh /dev/sdb

※但し、シェルスクリプトの第一引数の値は、PC環境に依って異なるので注意。
4. microSDカードを取り出し、BeagleBoardに挿入して、電源を投入すればBeagleBoard上でAndroidが起動する:

ディスプレイとして、HanwhaのHM-TL10Tを使用していないのは、pre-built版のイメージでは、HM-TL10Tが正しく認識されないのか、画面が表示されないため。
タッチパネル環境を実現するためにHM-TL10Tの利用は必須なので、何とかならないかと思って、RowboatのAndroid OSをソースからビルド、イメージ作成を行い、それを用いたらHM-TL10Tが正しく認識されたので、次はその方法を書く。

Rowboat Android OSのインストール

こちらの手順も、上述の書籍のCHAPTER 06に書かれており、それに従ってイメージを作成すれば問題なくインストール出来る。
RowboatのAndroid OSのソースは、gitリポジトリ上で公開されています(git://gitorious.org/rowboat/manifest.git)。
ソースの取得には、Androidのrepoコマンドを利用します。詳細は、repoコマンドのページを参照して下さい。
ソースの取得からビルド、インストールまでの手順は、書籍のCHAPTER 06 SECTION 39〜SECTION 43を参照。

手順に従ってイメージをインストールし、BeagleBoard上でAndroidを起動したら、HM-TL10Tでも画面が正しく表示されるようになった:

双方のカーネルコンフィギュレーションの内容が異なっているためこれが原因かと考えられますが、確信はないです。
またの機会に、詳細を追ってみたい。

残課題

HM-TL10Tに搭載されているタッチパネルは、RowboatのAndroid OSでも認識されない。
Linuxデバイスドライバを修正するか実装する必要がありそう。こちらについては、また次回。