ブログネタ
Android に参加中!
android-4.0.1 on PandaBoard の PandaBoard ES 版。
AOSP の x-loader と u-boot では起動しないので、
PandaBoard ES 用のものを用意した。
PandaBoard 環境同様に GPU や WiFi が動作する。
環境作成手順
ソースコード取得
$ mkdir -p /home/sola/work/panda_es_4.0.1
$ cd /home/sola/work/panda_es_4.0.1
$ export ANDROID_ROOT=$PWD
$ repo init -u https://bitbucket.org/sola/android_4.0.1_pandaboard_manifest
$ repo sync -j8
$ wget https://dl.google.com/dl/android/aosp/imgtec-panda-itl41d-dfebf249.tgz
$ tar zxvf imgtec-panda-itl41d-dfebf249.tgz
$ ./extract-imgtec-panda.sh

kernel のビルド
$ cd $ANDROID_ROOT
$ git clone https://android.googlesource.com/kernel/omap kernel
$ cd kernel
$ git checkout -b android-omap-panda-3.0 origin/android-omap-panda-3.0
$ git checkout 000d4b0f39572ef08b4e45c5125c95da108b11b6
$ export ARCH=arm
$ export CROSS_COMPILE=$ANDROID_ROOT/prebuilt/linux-x86/toolchain/arm-linux-androideabi-4.4.x/bin/arm-linux-androideabi-
$ make panda_defconfig
$ make uImage -j8
$ cp -a arch/arm/boot/zImage $ANDROID_ROOT/device/ti/panda/kernel

Android のビルド
$ cd $ANDROID_ROOT
$ source build/envsetup.sh
$ lunch full_panda-eng
$ make -j8

ビルドしたイメージの書き込み
$ wget http://android-development-environment.googlecode.com/files/mksdcard_pandaboard_es.sh
$ chmod a+x mksdcard_pandaboard_es.sh
$ sudo ./mksdcard_pandaboard_es.sh /dev/sdx $ANDROID_ROOT
/dev/sdx の x の部分は環境によって異なるので、確認すること。

補足
android-4.0.1_r1.2 から変更したリポジトリ
https://android.googlesource.com/device/ti/panda.git
https://android.googlesource.com/platform/hardware/ti/wlan.git (※追加)
https://android.googlesource.com/platform/external/wpa_supplicant_8.git
変更内容
https://bitbucket.org/sola/android_4.0.1_pandaboard_device_ti_panda
https://bitbucket.org/sola/android_4.0.1_pandaboard_hardware_ti_wlan
https://bitbucket.org/sola/android_4.0.1_pandaboard_external_wpa_supplicant_8

x-loader と u-boot は、
Ice Cream Sandwich on PandaBoard ES
同様に git.omapzoom.org から取得してビルドしたもの。
u-boot だけ修正した。
diff --git a/include/configs/omap4430panda.h b/include/configs/omap4430panda.h
index 5ff5efe..2ae619c 100644
--- a/include/configs/omap4430panda.h
+++ b/include/configs/omap4430panda.h
@@ -147,8 +147,8 @@
" ip=dhcp"
#else

-#define CONFIG_BOOTARGS "console=ttyO2,115200n8 mem=512M" \
- " init=/init vram=32M omapfb.vram=0:16M androidboot.console=ttyO2"
+#define CONFIG_BOOTARGS "console=ttyO2,115200n8 mem=456M@0x80000000 mem=512M@0xA0000000" \
+ " init=/init vram=32M omapfb.vram=0:16M consoleblank=0 androidboot.console=ttyO2"

#define CONFIG_BOOTCOMMAND "booti mmc0"
#define CONFIG_OMAP4_ANDROID_CMD_LINE 1