色々と問題はありますが、FT701Wで本体内蔵のファームを書き換えることなく、USBからカーネルを送り込んで起動することに成功しました!
ファームを解析して omap4boot に FT701W の初期化コードを追加してみました。
修正した omap4boot は github で公開してます。
ビルド方法は codesourcery の toolchain を使うので、今回は詳細は割愛しますが以下のような感じです。いろいろ整理ができたら詳しく書きます。
$ make TOOLCHAIN=??????/arm-2011.03/bin/arm-none-eabi- BOARD=ft701w
まだ実用じゃないですが、とりあえず使い方を。
- FT701Wのファームを展開し boot.img を取り出す
- FT701W の電源を落とす
- Linux PC 上で以下のコマンドを実行
$ usbboot boot.img
using built-in 2ndstage.bin
waiting for OMAP44xx device...これで接続待ち状態になる
- FT701W と Linux PC をUSBで接続する。Linux PC で以下のような表示になれば成功
reading ASIC ID
CHIP: 4430
IDEN: 0000000000000000000000000000000000000000
MPKH: 0000000000000000000000000000000000000000000000000000000000000000
CRC0: 9c669ad9
CRC1: 00000000
sending 2ndstage to target... f0030002
waiting for 2ndstage response...
sending image to target...
とりあえず、オリジナルのカーネルを起動することはできたのですが、なぜか画面が表示されません。画面周りはu-bootで初期化してるのかもしれないです。
また、今回の手順では rootfs もオリジナルのファームそのままなので、画面が出ないものの、中では Android が起動してます。
画面は出ませんがUSBは使えるので、adbでログインすることができます。
kernel はソースがないのでいじれないですが、rootfs はいじれるので、ひとまず簡単にファームの保存、復帰できるイメージでも作ってみますかね。
文鎮化してしまった自分にちって大変興味深いです。
Linuxをいじったことないので理解できるまで達していませんが・・・
返信遅くなってすいません。
只今バックアップ/リカバリを行う起動イメージを作成中ですのでしばらくおまちください。
ただ、文鎮化する前にバックアップを取っていれば完全に直せるんですが、
バックアップがない場合は、少々手こずるかもしれません。
バックアップはなくても、/system 以下はいじれるようになるので、
手作業でファイルを戻すことで復旧することになると思います。
バックアップは取っていなかったのですが、近日中に出荷時のデータなどは手に入る予定です。
2chに乗っかって知識もない状態で手を出したので、自業自得です・・・
急いでいませんので、bucchiさんのペースで構いません^^