Kobo touch
巷で大人気なKOBOにNetBSD載せました。Koboちゃん解析 にいろいろ詳しい事書いてあります。
NetWalkerでi.MX51に対応してあったので意外と簡単に動いたかなという感じです。
とりあえず2012/09/21現在のcurrentでのKOBO対応を公開しようと思います。
パッチは google drive に置いておきます。
kobo.diff
Boot
Boot方法ですが、残念ながらノーマルな状態から簡単にできる方法はありません。まずはu-bootをコンパイルすることから初めましょう。
u-bootのソースコードは kobolabs / Kobo-Reader にあります。
構築方法はgithubの、
Kobo-Reader/hw/imx508/ntx/u-boot-2009.08.tar.gz
を展開するとご丁寧に build.sh がありますのでそれを実行するだけです。
"build.sh"なんて開発者はきっとNetBSDユーザーに違いない。
とまあ解説しましたが、面倒だよという人にはバイナリを用意しておきました。
KOBO u-boot
使ってやってください。
u-boot.bin を 内蔵SD の先頭に放り込んでやればブートするはずです、はい。
"dd" でも使って適当なSDに書き込んでやってください。
元から入っていた SD は念の為取っておいた方がよいかと思います。
まあ電子書籍として使う気が無いならどうでも良いですが。
肝心のNetBSDバイナリは外付けのSDカードスロットの方に入れておきます。
普通にFATでフォーマットしたSDのルートディレクトリに置けばOK。
(この辺は u-boot から boot できればなんでもいいので適宜読み替えてください。)
u-bootがブートしたら以下のコマンドをすばやく入力してください。
(一定時間放っておくとハングアップします。多分WDTなのですが原因はよくわかっておりません。)
- mmcinfo 1
- fatload mmc 1 0x70800000 netbsd.bin
- go 0x70800000
(u-bootでこれを自動実行する方法ってどうやるんでしょう?)
デバイスドライバ
今のところ- UART
- GPIO
- SD
- USB HOST
- I2C (温度センサ)
ちなみに、USB Host は Vbus を供給する事ができないので Vbus は他から入れてやるか、Vbus関係ねぇなHubを見つけてきてください。
私は これ を使って Vbus を供給してあげました。
うーん、なかなか説明が難しいです。
わからない事あれば御気軽にご相談ください。
まとめ
- シリアルを奪う
- 内蔵SDのu-bootを入れ変える
- 外付けのSDカードにNetBSDバイナリを格納
- u-bootのコンソールからブート
0 件のコメント:
コメントを投稿