Files
device_rockchip/rk3308/mkfirmware.sh
Hans Yang 8dede35ab8 rk3308: fix rootfs.img no found
Signed-off-by: Hans Yang <yhx@rock-chips.com>
Change-Id: I19eaad225afac80bb6908163f820aa6dd78764e0
2021-10-01 11:44:29 +08:00

161 lines
4.0 KiB
Bash
Executable File

#! /bin/bash
set -e
DEVICE_DIR=$(cd `dirname $0`; pwd)
if [ -h $0 ]
then
CMD=$(readlink $0)
DEVICE_DIR=$(dirname $CMD)
fi
cd $DEVICE_DIR
cd ../../..
TOP_DIR=$(pwd)
export RK_LOADER_NAME=
source $TOP_DIR/device/rockchip/.BoardConfig.mk
ROCKDEV=$TOP_DIR/rockdev
PRODUCT_PATH=$TOP_DIR/device/rockchip/$RK_TARGET_PRODUCT
PARAMETER=$TOP_DIR/device/rockchip/$RK_TARGET_PRODUCT/$RK_PARAMETER
OEM_DIR=$TOP_DIR/device/rockchip/$RK_TARGET_PRODUCT/$RK_OEM_DIR
USER_DATA_DIR=$TOP_DIR/device/rockchip/userdata/$RK_USERDATA_DIR
MISC_IMG=$TOP_DIR/device/rockchip/rockimg/wipe_all-misc.img
ROOTFS_IMG=$TOP_DIR/$RK_ROOTFS_IMG
ROOTFS_IMG_SOURCE=$TOP_DIR/buildroot/output/$RK_CFG_BUILDROOT/images/rootfs.$RK_ROOTFS_TYPE
RECOVERY_IMG=$TOP_DIR/buildroot/output/$RK_CFG_RECOVERY/images/recovery.img
TRUST_IMG=$TOP_DIR/u-boot/trust.img
UBOOT_IMG=$TOP_DIR/u-boot/uboot.img
BOOT_IMG=$TOP_DIR/kernel/$RK_BOOT_IMG
if [ -z $RK_LOADER_NAME ]; then
LOADER=$TOP_DIR/u-boot/*_loader_v*.bin
else
LOADER=$TOP_DIR/u-boot/$RK_LOADER_NAME
fi
MKIMAGE=$TOP_DIR/device/rockchip/common/mk-image.sh
rm -rf $ROCKDEV
mkdir -p $ROCKDEV
# Require buildroot host tools to do image packing.
if [ ! -d "$TARGET_OUTPUT_DIR" ]; then
echo "Source buildroot/build/envsetup.sh"
source $TOP_DIR/buildroot/build/envsetup.sh $RK_CFG_BUILDROOT
fi
if [ "${RK_OEM_DIR}" == "dueros" ];then
if [ $RK_ARCH == arm ];then
TARGET_ARM_TYPE=arm32
else
TARGET_ARM_TYPE=arm64
PARAMETER=$TOP_DIR/device/rockchip/$RK_TARGET_PRODUCT/parameter-64bit-dueros.txt
fi
OEM_DIR=${ROCKDEV}/.oem
rm -rf ${OEM_DIR}
mkdir -p ${OEM_DIR}
find ${PRODUCT_PATH}/${RK_OEM_DIR} -maxdepth 1 -not -name "spil" \
-not -wholename "${PRODUCT_PATH}/${RK_OEM_DIR}" \
-exec sh -c 'cp -arf ${0} ${1}' "{}" ${OEM_DIR} \;
cp -rf ${PRODUCT_PATH}/${RK_OEM_DIR}/spil/${TARGET_ARM_TYPE}/baidu_spil_rk3308_${MIC_NUM}mic ${OEM_DIR}/baidu_spil_rk3308
echo "copy ${TARGET_ARM_TYPE} with ${MIC_NUM}mic."
else
OEM_DIR=${PRODUCT_PATH}/${RK_OEM_DIR}
fi
if [ $RK_ROOTFS_IMG ]
then
if [ -f $ROOTFS_IMG ]
then
echo -n "create rootfs.img..."
ln -rsf $ROOTFS_IMG $ROCKDEV/rootfs.img
echo "done."
else
echo "warning: $ROOTFS_IMG not found!"
if [ -f $ROOTFS_IMG_SOURCE ];then
echo "Fallback to $ROOTFS_IMG_SOURCE"
ln -rsf $ROOTFS_IMG_SOURCE $ROCKDEV/rootfs.img
fi
fi
fi
if [ -f $PARAMETER ]
then
echo -n "create parameter..."
cp -a $PARAMETER $ROCKDEV/parameter.txt
echo "done."
else
echo -e "\e[31m error: $PARAMETER not found! \e[0m"
fi
if [ -f $RECOVERY_IMG ]
then
echo -n "create recovery.img..."
cp -a $RECOVERY_IMG $ROCKDEV/recovery.img
echo "done."
else
echo -e "\e[31m error: $RECOVERY_IMG not found! \e[0m"
fi
if [ -f $MISC_IMG ]
then
echo -n "create misc.img..."
cp -a $MISC_IMG $ROCKDEV/misc.img
echo "done."
else
echo -e "\e[31m error: $MISC_IMG not found! \e[0m"
fi
echo -n "$OEM_DIR $RK_OEM_FS_TYPE"
if [ -d $OEM_DIR ]
then
$MKIMAGE $OEM_DIR $ROCKDEV/oem.img $RK_OEM_FS_TYPE
else
echo -e "\e[31m error: create oem image fail! \e[0m"
fi
if [ -d $USER_DATA_DIR ]
then
$MKIMAGE $USER_DATA_DIR $ROCKDEV/userdata.img $RK_USERDATA_FS_TYPE
else
echo -e "\e[31m error: $USER_DATA_DIR not found! \e[0m"
fi
if [ -f $UBOOT_IMG ]
then
echo -n "create uboot.img..."
cp -a $UBOOT_IMG $ROCKDEV/uboot.img
echo "done."
else
echo -e "\e[31m error: $UBOOT_IMG not found! \e[0m"
fi
if [ -f $TRUST_IMG ]
then
echo -n "create trust.img..."
cp -a $TRUST_IMG $ROCKDEV/trust.img
echo "done."
else
echo -e "\e[31m error: $TRUST_IMG not found! \e[0m"
fi
if [ -f $LOADER ]
then
echo -n "create loader..."
cp -a $LOADER $ROCKDEV/MiniLoaderAll.bin
echo "done."
else
echo -e "\e[31m error: $LOADER not found,or there are multiple loaders! \e[0m"
rm $LOADER
fi
if [ -f $BOOT_PATH ]
then
echo -n "create boot.img..."
cp -a $BOOT_IMG $ROCKDEV/boot.img
echo "done."
else
echo -e "\e[31m error: $BOOT_IMG not found! \e[0m"
fi
echo -e "\e[36m Image: image in rockdev is ready \e[0m"