47 lines
1.3 KiB
Bash
Executable File
47 lines
1.3 KiB
Bash
Executable File
#!/bin/bash
|
|
|
|
function build_bl30() {
|
|
if [ "${CONFIG_BYPASS_AOCPU}" == "y" ]; then
|
|
echo "bypass aocpu"
|
|
else
|
|
# $1: src_folder, $2: bin_folder, $3: soc
|
|
echo -n "Build $3 bl30 of ${BL30_SELECT}...Please wait..."
|
|
local tartget
|
|
if [ "${CONFIG_RTOS_SDK_ENABLE}" == "1" ]; then
|
|
echo "Build bl30 from new RTOS SDK."
|
|
local current_dir=$(cd $(dirname $0); pwd)
|
|
local work_dir=${current_dir}/bl30/rtos_sdk
|
|
local output_dir
|
|
cd $work_dir && source scripts/env.sh riscv $CONFIG_SOC_NAME $CONFIG_BOARD_PACKAGE_NAME aocpu && make distclean && make REPO_DIR=$REPO_DIR && make docs REPO_DIR=$REPO_DIR && \
|
|
output_dir=$work_dir/output/riscv-$CONFIG_BOARD_PACKAGE_NAME-$PRODUCT/freertos
|
|
target=$output_dir/bl30.bin
|
|
cp -arf $output_dir/freertos.bin $output_dir/bl30.bin
|
|
else
|
|
# co-work with bl30 build script under bl30.git
|
|
target="$1/bl30.bin"
|
|
cd $1
|
|
#export CROSS_COMPILE=${AARCH32_TOOL_CHAIN}
|
|
local soc=$3
|
|
if [ "$soc" == "gxtvbb" ]; then
|
|
soc="gxtvb"
|
|
fi
|
|
#make clean BOARD=$soc &> /dev/null
|
|
#make BOARD=$soc &> /dev/null
|
|
if [[ "${BL30_SELECT}" != "" ]]; then
|
|
/bin/bash mk ${BL30_SELECT}
|
|
else
|
|
/bin/bash mk $soc
|
|
fi
|
|
fi
|
|
if [ $? != 0 ]; then
|
|
cd ${MAIN_FOLDER}
|
|
echo "Error: Build bl30 failed... abort"
|
|
exit -1
|
|
fi
|
|
cd ${MAIN_FOLDER}
|
|
cp ${target} $2 -f
|
|
echo "done"
|
|
fi
|
|
return
|
|
}
|