98 lines
4.2 KiB
PHP
98 lines
4.2 KiB
PHP
|
DEPENDS += "mdm-image"
|
||
|
|
||
|
OTA_TARGET_BASENAME_EXT4 = "${MACHINE}-ota-target-image-ext4"
|
||
|
OTA_TARGET_IMAGE_ROOTFS_EXT4 = "${IMAGE_ROOTFS}/../${OTA_TARGET_BASENAME_EXT4}"
|
||
|
OUTPUT_FILE_EXT4 = "${DEPLOY_DIR_IMAGE}/${OTA_TARGET_BASENAME_EXT4}.zip"
|
||
|
BASE_IMAGE_ROOTFS_EXT4 = "$(echo ${IMAGE_ROOTFS} | sed 's#-recovery##')"
|
||
|
#OUTPUT_FILE_EXT4 = "${OTA_TARGET_BASENAME_EXT4}.zip"
|
||
|
|
||
|
python do_rootfs_append(){
|
||
|
bb.build.exec_func('recovery_ext4', d)
|
||
|
}
|
||
|
|
||
|
recovery_ext4[cleandirs] = "${OTA_TARGET_IMAGE_ROOTFS_EXT4}"
|
||
|
recovery_ext4[dirs] = "${OTA_TARGET_IMAGE_ROOTFS_EXT4}"
|
||
|
|
||
|
recovery_ext4() {
|
||
|
rm -rf ${OTA_TARGET_IMAGE_ROOTFS_EXT4}
|
||
|
mkdir -p ${OTA_TARGET_IMAGE_ROOTFS_EXT4}
|
||
|
|
||
|
#Create directory structure for targetfiles.zip
|
||
|
mkdir -p ${OTA_TARGET_IMAGE_ROOTFS_EXT4}/BOOTABLE_IMAGES
|
||
|
mkdir -p ${OTA_TARGET_IMAGE_ROOTFS_EXT4}/DATA
|
||
|
mkdir -p ${OTA_TARGET_IMAGE_ROOTFS_EXT4}/META
|
||
|
mkdir -p ${OTA_TARGET_IMAGE_ROOTFS_EXT4}/OTA
|
||
|
mkdir -p ${OTA_TARGET_IMAGE_ROOTFS_EXT4}/RECOVERY
|
||
|
mkdir -p ${OTA_TARGET_IMAGE_ROOTFS_EXT4}/SYSTEM
|
||
|
mkdir -p ${OTA_TARGET_IMAGE_ROOTFS_EXT4}/RADIO
|
||
|
|
||
|
echo "base image rootfs: ${BASE_IMAGE_ROOTFS_EXT4}"
|
||
|
# copy radio directory content into RADIO directory
|
||
|
cp -r ${WORKSPACE}/oe-core/meta-msm/recipes/base-files-recovery/${MACHINE}/radio/. ${OTA_TARGET_IMAGE_ROOTFS_EXT4}/RADIO/.
|
||
|
|
||
|
# copy the boot\recovery images
|
||
|
cp ${DEPLOY_DIR_IMAGE}/${MACHINE}-boot.img ${OTA_TARGET_IMAGE_ROOTFS_EXT4}/BOOTABLE_IMAGES/boot.img
|
||
|
|
||
|
cp ${DEPLOY_DIR_IMAGE}/${MACHINE}-boot.img ${OTA_TARGET_IMAGE_ROOTFS_EXT4}/BOOTABLE_IMAGES/recovery.img
|
||
|
|
||
|
|
||
|
# copy the contents of system rootfs
|
||
|
cp -r ${BASE_IMAGE_ROOTFS_EXT4}/. ${OTA_TARGET_IMAGE_ROOTFS_EXT4}/SYSTEM/.
|
||
|
|
||
|
#copy contents of recovery rootfs
|
||
|
cp -r ${IMAGE_ROOTFS}/. ${OTA_TARGET_IMAGE_ROOTFS_EXT4}/RECOVERY/.
|
||
|
|
||
|
#generate recovery.fstab which is used by the updater-script
|
||
|
#echo #mount point fstype device [device2] >> ${OTA_TARGET_IMAGE_ROOTFS_EXT4}/RECOVERY/recovery.fstab
|
||
|
echo /boot emmc /dev/block/bootdevice/by-name/boot >> ${OTA_TARGET_IMAGE_ROOTFS_EXT4}/RECOVERY/recovery.fstab
|
||
|
echo /cache ext4 cache >> ${OTA_TARGET_IMAGE_ROOTFS_EXT4}/RECOVERY/recovery.fstab
|
||
|
echo /data ext4 userdata >> ${OTA_TARGET_IMAGE_ROOTFS_EXT4}/RECOVERY/recovery.fstab
|
||
|
echo /recovery emmc /dev/block/bootdevice/by-name/recovery >> ${OTA_TARGET_IMAGE_ROOTFS_EXT4}/RECOVERY/recovery.fstab
|
||
|
echo /system ext4 system >> ${OTA_TARGET_IMAGE_ROOTFS_EXT4}/RECOVERY/recovery.fstab
|
||
|
|
||
|
#Copy contents of userdata rootfs
|
||
|
if [ -d ${TMPDIR}/rootfs/${MACHINE}-usrfs/ ]; then
|
||
|
cp -r ${TMPDIR}/rootfs/${MACHINE}-usrfs/. ${OTA_TARGET_IMAGE_ROOTFS_EXT4}/DATA/.
|
||
|
fi
|
||
|
|
||
|
#Getting content for OTA folder
|
||
|
mkdir -p ${OTA_TARGET_IMAGE_ROOTFS_EXT4}/OTA/bin
|
||
|
cp ${OTA_TARGET_IMAGE_ROOTFS_EXT4}/RECOVERY/usr/bin/applypatch ${OTA_TARGET_IMAGE_ROOTFS_EXT4}/OTA/bin/.
|
||
|
|
||
|
cp ${OTA_TARGET_IMAGE_ROOTFS_EXT4}/RECOVERY/usr/bin/updater ${OTA_TARGET_IMAGE_ROOTFS_EXT4}/OTA/bin/.
|
||
|
|
||
|
|
||
|
# copy contents of META folder
|
||
|
#recovery_api_version is from recovery module
|
||
|
echo recovery_api_version=3 >> ${OTA_TARGET_IMAGE_ROOTFS_EXT4}/META/misc_info.txt
|
||
|
|
||
|
#blocksize = BOARD_FLASH_BLOCK_SIZE
|
||
|
echo blocksize=131072 >> ${OTA_TARGET_IMAGE_ROOTFS_EXT4}/META/misc_info.txt
|
||
|
|
||
|
#boot_size: Size of boot partition from partition.xml
|
||
|
echo boot_size=0x00A00000 >> ${OTA_TARGET_IMAGE_ROOTFS_EXT4}/META/misc_info.txt
|
||
|
|
||
|
#recovery_size : Size of recovery partition from partition.xml
|
||
|
echo recovery_size=0x00A00000 >> ${OTA_TARGET_IMAGE_ROOTFS_EXT4}/META/misc_info.txt
|
||
|
|
||
|
#system_size : Size of system partition from partition.xml
|
||
|
echo system_size=0x00A00000 >> ${OTA_TARGET_IMAGE_ROOTFS_EXT4}/META/misc_info.txt
|
||
|
|
||
|
#userdate_size : Size of data partition from partition.xml
|
||
|
echo userdata_size=0x00A00000 >> ${OTA_TARGET_IMAGE_ROOTFS_EXT4}/META/misc_info.txt
|
||
|
|
||
|
#mkyaffs2_extra_flags : -c $(BOARD_KERNEL_PAGESIZE) -s $(BOARD_KERNEL_SPARESIZE)
|
||
|
echo mkyaffs2_extra_flags=-c 4096 -s 16 >> ${OTA_TARGET_IMAGE_ROOTFS_EXT4}/META/misc_info.txt
|
||
|
|
||
|
#extfs_sparse_flag : definition in build
|
||
|
echo extfs_sparse_flags=-s >> ${OTA_TARGET_IMAGE_ROOTFS_EXT4}/META/misc_info.txt
|
||
|
|
||
|
#default_system_dev_certificate : Dummy location
|
||
|
echo default_system_dev_certificate=build/abcd >> ${OTA_TARGET_IMAGE_ROOTFS_EXT4}/META/misc_info.txt
|
||
|
|
||
|
#delete old files
|
||
|
rm -rf ${DEPLOY_DIR_IMAGE}/${OTA_TARGET_BASENAME_EXT4}
|
||
|
# Pack the files into the deploy dir
|
||
|
cp -r ${OTA_TARGET_IMAGE_ROOTFS_EXT4} ${DEPLOY_DIR_IMAGE}
|
||
|
}
|