2014-09-01 48 views
1

我想做Pandabaord上的android Kitkat Porting。 AOSP代碼編譯成功,現在編譯後生成引導,系統,用戶數據,u-boot和MLO所有映像文件。我想爲Panda板製作一個可引導的SD卡,我使用下面的腳本。pandabaord SD卡上的引導分區沒有正確創建

#!/bin/sh 
if [ $# -lt 2 ]; then 
echo "example usage: $0 /dev/sdc \$ANDROID_ROOT" 
exit 1 
fi 

DRIVE=$1 
ANDROID_ROOT_DIR=$2 

sudo umount ${DRIVE}* 

sudo dd if=/dev/zero of=$DRIVE bs=1 count=1024 
sudo sync 
sudo parted $DRIVE mklabel gpt 
sudo parted $DRIVE mkpart boot fat32 1MB 9MB 
sudo parted $DRIVE mkpart system ext4 9MB 521MB 
sudo parted $DRIVE mkpart cache ext4 521MB 1033MB 
sudo parted $DRIVE mkpart userdata ext4 1033MB 2033MB 
sudo parted $DRIVE mkpart media fat32 2033MB 3033MB 
sudo sync 

sudo mkfs.ext4 ${DRIVE}2 -L system 
sudo mkfs.ext4 ${DRIVE}3 -L cache 
sudo mkfs.ext4 ${DRIVE}4 -L userdata 
sudo mkfs.vfat -F 32 ${DRIVE}5 -n media 
sudo sync 

sudo dd if=${ANDROID_ROOT_DIR}/device/ti/panda/xloader.bin of=$DRIVE bs=131072 seek=1 
sudo sync 
sudo dd if=${ANDROID_ROOT_DIR}/device/ti/panda/bootloader.bin of=$DRIVE bs=262144 seek=1 
sudo sync 
sudo dd if=${ANDROID_ROOT_DIR}/out/target/product/panda/boot.img of=${DRIVE}1 
sudo sync 
${ANDROID_ROOT_DIR}/out/host/linux-x86/bin/simg2img ${ANDROID_ROOT_DIR}/out/target/product/panda/system.img ${ANDROID_ROOT_DIR}/out/target/product/panda/system.ext4.img 
sudo dd if=${ANDROID_ROOT_DIR}/out/target/product/panda/system.ext4.img of=${DRIVE}2 
sudo sync 
sudo e2label ${DRIVE}2 system 
sudo sync 

運行上述腳本此代碼分開DRIVE 5分區作爲系統,高速緩存,用戶數據和媒體之後。但爲什麼開機沒有創建?也就是說,{DRIVE} 1沒有設置知道?那麼將xloader.bin,bootloader.bin和boot.img全部存儲在哪裏?

感謝您的提前幫助。在PANDABOARD的

回答

0

ROM代碼會在兩個地方是「引導程序」的代碼,根據選項,您要使用:

  • 原始模式 - 那麼圖像必須在以下位置之一: SdCARD上的0KB,128KB,256KB,384KB和鏡像包含ROM檢查的特殊標題。

  • 從活動的主分區(文件必須稱爲MLO)Fat12/16/32啓動。

它看起來像你要使用原始模式,所以xloader.bin(MLO)包含東西啓動你的板(偏移128KB)。該代碼是通過ROM代碼讀取內存PANDABOARD ,然後可能加載bootloder- bootloader.bin的下一階段

所以,你在這裏做什麼:

sudo dd if=${ANDROID_ROOT_DIR}/device/ti/panda/xloader.bin of=$DRIVE bs=131072 seek=1 

sudo dd if=${ANDROID_ROOT_DIR}/device/ti/panda/bootloader.bin of=$DRIVE bs=262144 seek=1 

只是應付兩個文件到SD卡的偏移128KB和256KB,這些圖像存儲在那裏。