fastbootでnandを焼けばADP1もcupcakeになるわけですが、いくつか問題もあるようですし、nandを焼かずに違うシステムを起動できるか試してみます。
microSDにfdiskでpatritionつくって、system.imgとuserdata.imgをddしてみましたが、どうもmountに失敗します。
これはあっさりあきらめて、ext3でmountできるようにしてみます。
MYDROID/kernel/arch/arm/configs/msm_defconfigにCONFIG_EXT3_FS=yを追加。make ARCH=arm CROSS_COMPILE=MYDROID/prebuilt/linux-x86/toolchain/arm-eabi-4.2.1/bin/arm-eabi- msm_defconfig
make ARCH=arm CROSS_COMPILE=MYDROID/prebuilt/linux-x86/toolchain/arm-eabi-4.2.1/bin/arm-eabi-
MYDROID/kernel/arch/arm/boot/zImageができます。MYDROID/buildspec.mkでTARGET_PRODUCT:=htc_dream
TARGET_PREBUILT_KERNEL:=MYDROID/kernel/arch/arm/boot/zImage
ってしとけば、gitでとってきたkernel(
vendor/htc/dream/kernel)のかわりにそれが使われます(
vendor/htc/dream/README.txtにはTARGET_PREBUILD_KERNELって書いてあるので注意)。ADP1をカメラボタン押しながら起動して、バックボタン押してFASTBOOTモードにしてから、
MYDROID/out/target/product/dreamでfastboot boot boot.img
とすれば自前ビルドkernelとramdiskで起動します。
MYDROID/system/core/rootdir/init.rcとMYDROID/vendor/htc/dream/init.trout.rcを組み合わせたinit.rcが起動時にスクリプトとして実行されるので、ここでsdcardをext3でmountできればいいわけですが。/system, /data mountしようとしたときにはsdcardがまだ居ない状態。
system/core/initいじって、sleepコマンドとか追加して待たせてみたものの、どうにもsdcardをmountできず... ADP1以外のportだとsdcardからext3でmountできてるんですけども(omapzoomとか)。/system mountできないとadb shellすると /system/bin/sh がないとか怒られます。
mount yaffs2 loop@/data/system.img /system
とかでもできるはずですが、これだとnandの容量がきびしいんですよね。/cacheを使うか。

