fn_process_extra_delta
else
${MK_PART_DELTA} ${part_name} ${update_type} ${part_bin} ${delta_bin}
- RET=$?
- if [ "$RET" = "0" ] || [ "$RET" = "2" ]; then
+ if [ "$?" = "0" ]; then
if [ "${update_type}" = "DELTA_FS" ]; then
sudo mv data/${PART_OUT} ${RESULT_DIR}/${part_bin}
sudo mv ${RESULT_DIR}/${part_bin} ${DELTA_DIR}
sudo mv data/${PART_OUT} ${RESULT_DIR}/${part_bin}
sudo mv ${RESULT_DIR}/${part_bin}/${delta_bin} ${DELTA_DIR}
fi
- if [ "$RET" = "2" ]; then
- echo "Omit ${part_name} from cfg"
- sudo cat ${UPDATE_CFG_PATH} | sed /^${part_name}/d \
- > "${UPDATE_CFG_PATH}_tmp"
- sudo mv "${UPDATE_CFG_PATH}_tmp" ${UPDATE_CFG_PATH}
- fi
else
sudo rm -rf ${RESULT_DIR}/${part_bin}
echo "Error: Abort Delta Generation"
PART_IMG_NEW=${PART_IMG_ORG}.new
#---- untar partition image and rename for old & new ----
- if [ "z$1" = "z" ]; then
+ if [ ! "z${OLD_TAR_FILE}" = "z" ]; then
echo "untar ${OLD_TAR_FILE}"
tar xvf ${OLD_TAR_DIR}/${OLD_TAR_FILE} ${PART_IMG_ORG}
if [ "$?" != "0" ]; then
fi
sudo mv ${PART_IMG_ORG} ${PART_IMG_NEW}
- #---- check whether the binaries are same ----
- if [ "z$1" = "z" ]; then
+ if [ ! "z${OLD_TAR_FILE}" = "z" ]; then
+ #---- check whether the binaries are same ----
sudo diff ${PART_IMG_OLD} ${PART_IMG_NEW}
if [ "$?" = "0" ]; then
echo "[${PART_NAME}] two binaries are same"
echo "[${PART_NAME}] Failed to generate DELTA"
exit 1
fi
-
fi
sudo mv ${PART_IMG_NEW} ${OUTPUT_DIR}/${PART_IMG_ORG}
sudo chown ${MY_ID}:${MY_ID} ${OUTPUT_DIR}/${PART_IMG_ORG}
- if [ ! "z$1" = "z" ]; then
- # Return 2 informs mk_delta to omit this image
- # from update.cfg file
- return 2
- fi
return 0
}
return 0
}
+#------------------------------------------------------------------------------
+# Function :
+# fn_mk_flash_img
+#
+
+fn_mk_flash_img()
+{
+ PART_IMG_NEW=${PART_BIN}
+
+ #---- untar partition image and rename for old & new ----
+ echo "untar ${NEW_TAR_FILE}"
+ tar xvf ${NEW_TAR_DIR}/${NEW_TAR_FILE} ${PART_IMG_NEW}
+ if [ "$?" != "0" ]; then
+ return 1;
+ fi
+
+ sudo mv ${PART_IMG_NEW} ${OUTPUT_DIR}/${PART_BIN}
+ sudo chown ${MY_ID}:${MY_ID} ${OUTPUT_DIR}/${PART_BIN}
+
+ return 0
+}
+
+
#------------------------------------------------------------------------------
# Function :
fn_extract_from_image ${PART_BIN} /usr/bin/upgrade-trigger.sh
fi
-OLD_TAR_MISSING=
if [ "z${OLD_TAR_FILE}" = "z" ]; then
- OLD_TAR_MISSING="TRUE"
- if [ ! "${UPDATE_TYPE}" = "FULL_IMG" ]; then
+ if [ ! "${UPDATE_TYPE}" = "FULL_IMG" ] && [ ! "${UPDATE_TYPE}" = "PRE_UA" ]; then
echo "[old] tar file does not exist in ${DATA_DIR}/${OLD_TAR_DIR} which contains ${PART_BIN}"
#exit 0, cos this is not an error.
exit 0
exit 0
fi
-if [ "z${OLD_TAR_MISSING}" = "z" ]; then
+if [ ! "z${OLD_TAR_FILE}" = "z" ]; then
echo "[old] ${OLD_TAR_FILE} contains ${PART_BIN}"
fi
echo "[new] ${NEW_TAR_FILE} contains ${PART_BIN}"
mkdir ${OUTPUT_DIR}
fi
-if [ "${UPDATE_TYPE}" = "FULL_IMG" ]; then
- fn_mk_full_img $OLD_TAR_MISSING
- RET=$?
- if [ "$RET" != "0" ]; then
- exit $RET
- fi
+if [ "${UPDATE_TYPE}" = "FULL_IMG" ] || [ "${UPDATE_TYPE}" = "PRE_UA" ]; then
+ fn_mk_full_img
elif [ "${UPDATE_TYPE}" = "DELTA_IMG" ]; then
fn_mk_delta_img
elif [ "${UPDATE_TYPE}" = "DELTA_FS" ]; then
ROOTFS rootfs.img rootfs.img/ DELTA_FS /dev/mmcblk0p13 0
BOOT zImage delta.boot DELTA_IMG /dev/mmcblk0p6 0
-RECOVERY zImage-recovery zImage-recovery FULL_IMG /dev/mmcblk0p7 0
-RAMDISK1 ramdisk.img ramdisk.img FULL_IMG /dev/mmcblk0p8 0
-RAMDISK2 ramdisk-recovery.img ramdisk-recovery.img FULL_IMG /dev/mmcblk0p4 0
+RECOVERY zImage-recovery zImage-recovery PRE_UA /dev/mmcblk0p7 0
+RAMDISK1 ramdisk.img ramdisk.img PRE_UA /dev/mmcblk0p8 0
+RAMDISK2 ramdisk-recovery.img ramdisk-recovery.img PRE_UA /dev/mmcblk0p4 0