nt9856x/loader/MakeCommon/make_combo_loader.sh

185 lines
7.3 KiB
Bash
Executable File

#!/bin/bash
MODEL_BUILD_LIST=("lunch rtos cfg_TEST_REALCHIP gcc-linaro-6.4.1-2018.05-x86_64_arm-eabi"
"lunch rtos cfg_TEST_RTOS_RUN_CORE2 gcc-linaro-6.4.1-2018.05-x86_64_arm-eabi")
function make_NT98560_loader_only(){
sed -i 's/^#define LOADER_TYPE[ \t].*/#define LOADER_TYPE STAND_ALONE_LOADER_560/g' ../LibExt/LIBExt_src/Ctrl_Flow/bl_func.h
make clean "MODEL=EMU_EVB"
make release "MODEL=EMU_EVB"
if [ -d "../output" ]; then
rm -rf ../output
mkdir -p ../output
else
mkdir -p ../output
fi
find ../Project/Model/ -name LD*.bin -exec cp {} ../output \;
#cp ../Project/Model/Loader560_Data/Release/LD98560A.bin ../output
}
function make_NT98560_loader_use_ROM_API(){
sed -i 's/^#define LOADER_TYPE[ \t].*/#define LOADER_TYPE STAND_ALONE_LOADER_560/g' ../LibExt/LIBExt_src/Ctrl_Flow/bl_func.h
make clean "MODEL=EMU_EVB" "ROM_PUBLIC_API := ON"
make release "MODEL=EMU_EVB" "ROM_PUBLIC_API := ON" -j66
if [ -d "../output" ]; then
rm -rf ../output
mkdir -p ../output
else
mkdir -p ../output
fi
find ../Project/Model/ -name LD*.bin -exec cp {} ../output \;
#cp ../Project/Model/Loader560_Data/Release/LD98560A.bin ../output
}
function make_NT98560_loader_not_use_ROM_API(){
sed -i 's/^#define LOADER_TYPE[ \t].*/#define LOADER_TYPE STAND_ALONE_LOADER_560/g' ../LibExt/LIBExt_src/Ctrl_Flow/bl_func.h
make clean "MODEL=EMU_EVB" "ROM_PUBLIC_API := OFF"
make release "MODEL=EMU_EVB" "ROM_PUBLIC_API := OFF" -j66
if [ -d "../output" ]; then
rm -rf ../output
mkdir -p ../output
else
mkdir -p ../output
fi
find ../Project/Model/ -name LD*.bin -exec cp {} ../output \;
#cp ../Project/Model/Loader560_Data/Release/LD98560A.bin ../output
}
function make_NT98528_loader_only(){
sed -i 's/^#define LOADER_TYPE[ \t].*/#define LOADER_TYPE STAND_ALONE_LOADER_528/g' ../LibExt/LIBExt_src/Ctrl_Flow/bl_func.h
make clean "MODEL=EMU_EVB"
make clean "MODEL=EMU_EVB_528"
make release "MODEL=EMU_EVB_528"
if [ -d "../output" ]; then
rm -rf ../output
mkdir -p ../output
else
mkdir -p ../output
fi
find ../Project/Model/ -name LD*.bin -exec cp {} ../output \;
#cp ../Project/Model/Loader528_Data/Release/LD98528A.bin ../output
}
function make_NT9852x_combo_loader(){
if [ -d "../output" ]; then
rm -rf ../output
mkdir -p ../output
else
mkdir -p ../output
fi
sed -i 's/^#define LOADER_TYPE[ \t].*/#define LOADER_TYPE COMBINATION_52x/g' ../LibExt/LIBExt_src/Ctrl_Flow/bl_func.h
make clean "MODEL=EMU_EVB"
make release "MODEL=EMU_EVB" "BIN_NAME=LDCOMBOA" "52x_528_COMBO=ON"
find ../Project/Model/ -name LD*.bin -exec cp {} ../output/LD9852XA.bin \;
#cp ../Project/Model/Loader525_Data/Release/LDCOMBOA.bin ../output/LD98525A.bin
sed -i 's/^#define LOADER_TYPE[ \t].*/#define LOADER_TYPE COMBINATION_528/g' ../LibExt/LIBExt_src/Ctrl_Flow/bl_func.h
make clean
make release "MODEL=EMU_EVB_528" "BIN_NAME=LDCOMBOA"
find ../Project/Model/ -name LD*.bin -exec cp {} ../output/LD98528A.bin \;
#cp ../Project/Model/Loader528_Data/Release/LDCOMBOA.bin ../output/LD98528A.bin
cat ../output/LD9852XA.bin ../output/LD98528A.bin > ../output/LDCOMBOA.bin
sed -i 's/^#define LOADER_TYPE[ \t].*/#define LOADER_TYPE STAND_ALONE_LOADER_52x/g' ../LibExt/LIBExt_src/Ctrl_Flow/bl_func.h
}
function make_NT98560_eth_write_loader(){
sed -i 's/^#define LOADER_TYPE[ \t].*/#define LOADER_TYPE STAND_ALONE_LOADER_560/g' ../LibExt/LIBExt_src/Ctrl_Flow/bl_func.h
sed -i 's/^STORAGEEXT =[ \t].*/STORAGEEXT = Eth/g' ../Project/Model/ModelConfig_EMU_EVB.txt
rm -rf ../Project/Model/Loader56*
make clean "MODEL=EMU_EVB"
make release "MODEL=EMU_EVB"
if [ -d "../output" ]; then
rm -rf ../output
mkdir -p ../output
else
mkdir -p ../output
fi
find ../Project/Model/ -name loader.bin -exec cp {} ../output \;
#cp ../Project/Model/Loader525_Data/Release/LD98525A.bin ../output
}
function make_NT98528_eth_write_loader(){
if [ -d "../output" ]; then
rm -rf ../output
mkdir -p ../output
else
mkdir -p ../output
fi
sed -i 's/^#define LOADER_TYPE[ \t].*/#define LOADER_TYPE COMBINATION_528/g' ../LibExt/LIBExt_src/Ctrl_Flow/bl_func.h
make clean
make release "MODEL=EMU_EVB_528" "BIN_NAME=LDCOMBOA"
find ../Project/Model/ -name loader.bin -exec cp {} ../output/loader.bin \;
#cp ../Project/Model/Loader528_Data/Release/LDCOMBOA.bin ../output/LD98528A.bin
#cat ../output/LD9852XA.bin ../output/LD98528A.bin > ../output/LDCOMBOA.bin
sed -i 's/^#define LOADER_TYPE[ \t].*/#define LOADER_TYPE STAND_ALONE_LOADER_52x/g' ../LibExt/LIBExt_src/Ctrl_Flow/bl_func.h
}
function make_NT98560_sqa_fastboot_test_nand(){
cp ../LibExt/LIBExt_src/Ctrl_Flow/bl_func.h ../LibExt/LIBExt_src/Ctrl_Flow/bl_func_tmp.h
cp ../Project/Model/Src/prj_main.h ../Project/Model/Src/prj_main_tmp.h
cp ../Project/Model/Src/prj_main.c ../Project/Model/Src/prj_main_tmp.c
sed -i 's/^#define LOADER_TYPE[ \t].*/#define LOADER_TYPE STAND_ALONE_LOADER_560/g' ../LibExt/LIBExt_src/Ctrl_Flow/bl_func.h
sed -i 's/^#define DEBUG_MSG[ \t].*/#define DEBUG_MSG (DISABLE)/g' ../Project/Model/Src/prj_main.h
sed -i 's/^[ \t]\/\/strg_obj->flash_setFrequency(96);*/strg_obj->flash_setFrequency(96);/g' ../Project/Model/Src/prj_main.c
make clean "MODEL=EMU_EVB"
make release "MODEL=EMU_EVB"
if [ -d "../output" ]; then
rm -rf ../output
mkdir -p ../output
else
mkdir -p ../output
fi
find ../Project/Model/ -name LD*.bin -exec cp {} ../output \;
cp ../LibExt/LIBExt_src/Ctrl_Flow/bl_func_tmp.h ../LibExt/LIBExt_src/Ctrl_Flow/bl_func.h
cp ../Project/Model/Src/prj_main_tmp.h ../Project/Model/Src/prj_main.h
cp ../Project/Model/Src/prj_main_tmp.c ../Project/Model/Src/prj_main.c
#cp ../Project/Model/Loader560_Data/Release/LD98560A.bin ../output
}
echo -e "Please select NMAKE environment:"
echo -e "1. make NT9856x standalone loader(MODEL = EMU_EVB)"
echo -e "2. make NT9856x (tee) loader(MODEL = EMU_EVB)"
echo -e "3. make NT9856x loader(MODEL = EMU_EVB) use ROM Public API"
echo -e "4. make NT9856x loader(MODEL = EMU_EVB) Not use ROM Public API"
#echo -e "3. make NT9852x & NT98528 combination loader"
echo -e "5. make NT98560 Eth write loader(MODEL = EMU_EVB)"
#echo -e "5. make NT98528 Eth write loader(MODEL = EMU_EVB_528)"
echo -e "-------------------------------------------------------"
echo -e "6. make NT98560 power down loader(MODEL = EMU_EVB)"
echo -e "s. make NT98560 for SQA fastboot test(internal usage)"
read NMAKE_ENV
case ${NMAKE_ENV} in
"1")
make_NT98560_loader_only;
;;
"2")
sed -i 's/^#define SDRAM_Start_FW[ \t].*/#define SDRAM_Start_FW 0x02800000/g' ../LibExt/LIBExt_src/Ctrl_Flow/bl_func.h
make_NT98560_loader_only;
sed -i 's/^#define SDRAM_Start_FW[ \t].*/#define SDRAM_Start_FW 0x02000000/g' ../LibExt/LIBExt_src/Ctrl_Flow/bl_func.h
;;
"3")
make_NT98560_loader_use_ROM_API;
;;
"4")
make_NT98560_loader_not_use_ROM_API;
;;
"5")
make_NT98560_eth_write_loader;
;;
"6")
make_NT98560_loader_only;
./../Tools/Bin/bin2byte_linux ../output/LD98560A.bin v_resume_ldr 4 > ../output/pdn.txt
;;
"s")
make_NT98560_sqa_fastboot_test_nand;
;;
*)
echo -e "exit"
;;
esac