blob: 0831aa6d47b4a2246a70e21e7a2c537b4024cb3f [file] [log] [blame]
xiaobo gue6c46862018-01-10 18:58:09 +08001#!/bin/bash
2
3function build_bl30() {
Bo Lv85ad69b2023-04-11 20:34:47 +08004 if [ "${CONFIG_BYPASS_AOCPU}" == "y" ]; then
5 echo "bypass aocpu"
lei qianb3de3f82021-12-03 14:44:40 +08006 else
Bo Lv85ad69b2023-04-11 20:34:47 +08007 # $1: src_folder, $2: bin_folder, $3: soc
8 echo -n "Build $3 bl30 of ${BL30_SELECT}...Please wait..."
9 local tartget
10 if [ "${CONFIG_RTOS_SDK_ENABLE}" == "1" ]; then
11 echo "Build bl30 from new RTOS SDK."
12 local current_dir=$(cd $(dirname $0); pwd)
13 local work_dir=${current_dir}/bl30/rtos_sdk
14 local output_dir
hongmei.kuang80be94f2024-03-19 11:34:17 +000015 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 && \
Bo Lv85ad69b2023-04-11 20:34:47 +080016 output_dir=$work_dir/output/riscv-$CONFIG_BOARD_PACKAGE_NAME-$PRODUCT/freertos
17 target=$output_dir/bl30.bin
18 cp -arf $output_dir/freertos.bin $output_dir/bl30.bin
Xiaohu.Huang89f16b42021-12-16 17:18:11 +080019 else
Bo Lv85ad69b2023-04-11 20:34:47 +080020 # co-work with bl30 build script under bl30.git
21 target="$1/bl30.bin"
22 cd $1
23 #export CROSS_COMPILE=${AARCH32_TOOL_CHAIN}
24 local soc=$3
25 if [ "$soc" == "gxtvbb" ]; then
26 soc="gxtvb"
27 fi
28 #make clean BOARD=$soc &> /dev/null
29 #make BOARD=$soc &> /dev/null
30 if [[ "${BL30_SELECT}" != "" ]]; then
31 /bin/bash mk ${BL30_SELECT}
32 else
33 /bin/bash mk $soc
34 fi
Xiaohu.Huang89f16b42021-12-16 17:18:11 +080035 fi
Bo Lv85ad69b2023-04-11 20:34:47 +080036 if [ $? != 0 ]; then
37 cd ${MAIN_FOLDER}
38 echo "Error: Build bl30 failed... abort"
39 exit -1
40 fi
xiaobo gue6c46862018-01-10 18:58:09 +080041 cd ${MAIN_FOLDER}
Bo Lv85ad69b2023-04-11 20:34:47 +080042 cp ${target} $2 -f
43 echo "done"
xiaobo gue6c46862018-01-10 18:58:09 +080044 fi
xiaobo gue6c46862018-01-10 18:58:09 +080045 return
Bo Lv7fbead12021-01-14 02:43:31 -050046}