Files
kunlun/build/build_kl2_flash_ai.sh

200 lines
6.1 KiB
Bash
Raw Normal View History

2024-09-28 14:24:04 +08:00
#!/bin/bash
CHIP=$1
FLASH_SIZE=$2
CUSTOM=$3
TYPE=$4
CHIP_STRING=("NA")
FLASH_SIZE_STRING=("1m")
CUSTOM_STRING=("kl2")
IMG_TYPE="ai"
HTZD_ENV_ID=0
JSMT_ENV_ID=0
WQRD_ENV_ID=0
GLDQ_ENV_ID=0
CHIP_ID_ENV="export HW_CHIP_ID="
VER_ID_ENV="export hw_board_id="
SRC_ENV_FILE="env_flash_ai_kl2.sh"
# BUILD_FLAGS:
# 0 --> error
# 1 --> set default chip_id=wq, and pack all customers bin
# 2 --> set chip=arg1, and pack all customers bin
# 3 --> set chip=arg1, custom=arg2, and pack one customers bin
# 4 --> genarate cert version
BUILD_FLAGS=0
if [ "$CHIP" == "" ]; then
BUILD_FLAGS=1
else
for STR in ${CHIP_STRING[@]}; do
if [ "$CHIP" == "$STR" ]; then
BUILD_FLAGS=2
fi
done
fi
if [ "$FLASH_SIZE" != "" ]; then
for STR in ${FLASH_SIZE_STRING[@]}; do
if [ "$FLASH_SIZE" == "$STR" ]; then
BUILD_FLAGS=5
fi
done
fi
if [ "$CUSTOM" != "" ]; then
for STR in ${CUSTOM_STRING[@]}; do
if [ "$CUSTOM" == "$STR" ]; then
BUILD_FLAGS=3
fi
done
fi
if [ "$TYPE" != "" ]; then
if [ "$TYPE" == "upgrade" ] || [ "$TYPE" == "flash" ]; then
BUILD_FLAGS=4
else
BUILD_FLAGS=0
fi
fi
# clear bin file
cd ../tools/gen_img && rm -rf customer
cd -
rm -f ../Makefile
ln -s ./build/Makefile ../Makefile
set -o errexit
if [ $BUILD_FLAGS == 0 ]; then
# param error
echo "build script parameters error"
echo "[Usage]"
echo "$0 [chip name] [custom name] [type name]"
echo "[chip name] HZ/WQ"
echo "[flash size] 1m/2m/combo"
echo "[custom name] htzd/jsmt/wqrd/gldq/hzbj"
echo "[type name] flash/upgrade"
exit 1
elif [ $BUILD_FLAGS == 1 ]; then
# set default chip_id=wq, and pack all customers bin
echo "BUILD FLAGS: "${BUILD_FLAGS}
CHIP=${CHIP_STRING[0]}
ENV_STRING=${CHIP_ID_ENV}${CHIP}
cp $SRC_ENV_FILE env_tmp.sh
echo $ENV_STRING >> env_tmp.sh
cat env_tmp.sh
. env_tmp.sh && make -C .. clobber && make -C ..
rm env_tmp.sh
for STR in ${CUSTOM_STRING[@]}; do
cd ../tools/gen_img
# 1M flash image
./gen_img.sh -d ${CHIP} -c ${STR} -i ${IMG_TYPE} -r flash -m lzma
./gen_img.sh -d ${CHIP} -c ${STR} -i ${IMG_TYPE} -r upgrade -m lzma
# 2M flash image
./gen_img.sh -d ${CHIP} -c ${STR} -i ${IMG_TYPE} -r flash -m lzma -s 2m
./gen_img.sh -d ${CHIP} -c ${STR} -i ${IMG_TYPE} -r upgrade -m lzma -s 2m
cd -
done
elif [ $BUILD_FLAGS == 2 ]; then
# set chip=arg1, and pack all customers bin
echo "BUILD FLAGS: "${BUILD_FLAGS}
ENV_STRING=${CHIP_ID_ENV}${CHIP}
cp $SRC_ENV_FILE env_tmp.sh
echo $ENV_STRING >> env_tmp.sh
cat env_tmp.sh
. env_tmp.sh && make -C .. clobber && make -C ..
rm env_tmp.sh
for STR in ${CUSTOM_STRING[@]}; do
cd ../tools/gen_img
# 1M flash image
./gen_img.sh -d ${CHIP} -c ${STR} -i ${IMG_TYPE} -r flash -m lzma
./gen_img.sh -d ${CHIP} -c ${STR} -i ${IMG_TYPE} -r upgrade -m lzma
# 2M flash image
./gen_img.sh -d ${CHIP} -c ${STR} -i ${IMG_TYPE} -r flash -m lzma -s 2m
./gen_img.sh -d ${CHIP} -c ${STR} -i ${IMG_TYPE} -r upgrade -m lzma -s 2m
cd -
done
elif [ $BUILD_FLAGS == 3 ]; then
# set chip=arg1, custom=arg2, and pack one customers bin
echo "BUILD FLAGS: "${BUILD_FLAGS}
for STR in ${CUSTOM_STRING[@]}; do
if [ "$STR" == "$CUSTOM" ]; then
if [ "$STR" == "htzd" ]; then
ENV_STRING=${VER_ID_ENV}${HTZD_ENV_ID}
break
elif [ "$STR" == "jsmt" ]; then
ENV_STRING=${VER_ID_ENV}${JSMT_ENV_ID}
break
elif [ "$STR" == "wqrd" ]; then
ENV_STRING=${VER_ID_ENV}${WQRD_ENV_ID}
break
elif [ "$STR" == "gldq" ]; then
ENV_STRING=${VER_ID_ENV}${GLDQ_ENV_ID}
break
else
echo "build script parameters error"
echo "[Usage]"
echo "$0 [custom name]"
exit 1
fi
fi
done
cp $SRC_ENV_FILE env_tmp.sh
echo $ENV_STRING >> env_tmp.sh
ENV_STRING=${CHIP_ID_ENV}${CHIP}
echo $ENV_STRING >> env_tmp.sh
cat env_tmp.sh
. env_tmp.sh && make -C .. clobber && make -C ..
rm env_tmp.sh
cd ../tools/gen_img
if [ "$FLASH_SIZE" == "1m" ]; then
./gen_img.sh -d ${CHIP} -c ${STR} -i ${IMG_TYPE} -r flash -m lzma
./gen_img.sh -d ${CHIP} -c ${STR} -i ${IMG_TYPE} -r upgrade -m lzma
else
./gen_img.sh -d ${CHIP} -c ${STR} -i ${IMG_TYPE} -r flash -m lzma -s ${FLASH_SIZE}
./gen_img.sh -d ${CHIP} -c ${STR} -i ${IMG_TYPE} -r upgrade -m lzma -s ${FLASH_SIZE}
fi
cd -
elif [ $BUILD_FLAGS == 4 ]; then
#build upgrade image
echo "BUILD FLAGS: "${BUILD_FLAGS}
ENV_STRING=${CHIP_ID_ENV}${CHIP}
cp $SRC_ENV_FILE env_tmp.sh
echo $ENV_STRING >> env_tmp.sh
cat env_tmp.sh
. env_tmp.sh && make -C .. clobber && make -C ..
rm env_tmp.sh
cd ../tools/gen_img
if [ "$FLASH_SIZE" == "1m" ]; then
./gen_img.sh -d ${CHIP} -c ${CUSTOM} -i ${IMG_TYPE} -r ${TYPE} -m lzma
else
./gen_img.sh -d ${CHIP} -c ${CUSTOM} -i ${IMG_TYPE} -r ${TYPE} -m lzma -s ${FLASH_SIZE}
fi
cd -
elif [ $BUILD_FLAGS == 5 ]; then
#build 2m flash image
echo "BUILD FLAGS: "${BUILD_FLAGS}
cp $SRC_ENV_FILE env_tmp.sh
echo $FLASH_SIZE_ENV >> env_tmp.sh
cat env_tmp.sh
. env_tmp.sh && make -C .. clobber && make -C ..
rm env_tmp.sh
for STR in ${CUSTOM_STRING[@]}; do
cd ../tools/gen_img
if [ "$FLASH_SIZE" == "1m" ]; then
./gen_img.sh -d ${CHIP} -c ${STR} -i ${IMG_TYPE} -r flash -m lzma
./gen_img.sh -d ${CHIP} -c ${STR} -i ${IMG_TYPE} -r upgrade -m lzma
else
./gen_img.sh -d ${CHIP} -c ${STR} -i ${IMG_TYPE} -r flash -m lzma -s ${FLASH_SIZE}
./gen_img.sh -d ${CHIP} -c ${STR} -i ${IMG_TYPE} -r upgrade -m lzma -s ${FLASH_SIZE}
fi
cd -
done
fi
cd ../tools/gen_img
mkdir -p ../../bin && cp -rf customer ../../bin