Androidポーティング始動

Androidをポーティングしようと決まったのは12月初旬でした。
すでに各所でハードウェアにポーティングが行われ、Zaurusにも載っているという記事が出てきていて、早くポーティングしなければという思いが強くなっていたため、ボードの選定を急ぎました。


アルファプロジェクトのボードが安価でタッチパネルが魅力でしたが、ARM9でCPUクロックが108MHzと少々低速だったため、採用を見送りました。

他にもsandgateなど、いろいろ検討しましたが、NANDが256MByteあったこと、海外サイトでArmadillo-500でAndroidが動作したという記事を見たこと、アットマークテクノさんの日本語情報が豊富だったこと、購入前からソースがダウンロード可能であることなどから、Armadillo-500の採用が決まりました。

次はポーティングの方法の検討です。

Armadillo-500に付属のlinuxカーネルのヴァージョンは2.6.18、Androidlinuxカーネルは2.6.23です。
当初は以下の方法が考えられました。

A.2.6.23にArmadillo-500の修正差分を入れ、Android差分を入れる
B. Armadillo-500付属の2.6.18のカーネルを2.6.23にアップグレードしてAndroid差分を入れる
C. Armadillo-500付属の2.6.18のカーネルに直接Android差分を入れる

当初、Cの方法を試しましたがうまく出来ず、実際に実機で動作させた海外のブログ記事などでは、まずカーネルを2.6.23にすると書かれていたため、Aの方法を取りました。
#後日、Androidのポーティングに何が必要かわかってきた為、Cの方法でも成功しています。