#!/usr/bin/env bash scriptDir=$(dirname -- "$(readlink -f -- "$BASH_SOURCE")") source $scriptDir/../../scripts-settings/common_variable.sh export CROSS_COMPILE_AARCH64_PATH=$BUILD_DIR/source/toolchain/aarch64--glibc--stable-final export CROSS_COMPILE_AARCH64=$CROSS_COMPILE_AARCH64_PATH/bin/aarch64-buildroot-linux-gnu- #AGX #export WORK_DIR=/home/test/agx #export BUILD_DIR=$WORK_DIR/Linux_for_Tegra export UEFI_STMM_PATH=$BUILD_DIR/bootloader/standalonemm_optee_t194.bin export PLATFORM=194 echo $CROSS_COMPILE_AARCH64_PATH echo $CROSS_COMPILE_AARCH64 echo $WORK_DIR echo $BUILD_DIR echo $UEFI_STMM_PATH echo $PLATFORM echo "${PLATFORM}" #---------------------------------------------------------------------- #Building the OP-TEE source code #---------------------------------------------------------------------- #Execute this command to build the OP-TEE source package: cd $BUILD_DIR/source/public ./optee_src_build.sh -p t$PLATFORM #---------------------------------------------------------------------- #Building the OP-TEE dtb #---------------------------------------------------------------------- #Execute this command to build OP-TEE dtb: dtc -I dts -O dtb -o ./optee/tegra$PLATFORM-optee.dtb ./optee/tegra$PLATFORM-optee.dts #Building the ATF source code with OP-TEE SPD mkdir -p $BUILD_DIR/source/atf_build #tar -I lbzip2 -C $BUILD_DIR/source/atf_build -xpf $WORK_DIR/atf_src.tbz2 tar -I lbzip2 -C $BUILD_DIR/source/atf_build -xpf $BUILD_DIR/source/public/atf_src.tbz2 cd $BUILD_DIR/source/atf_build/arm-trusted-firmware make BUILD_BASE=./build \ CROSS_COMPILE="${CROSS_COMPILE_AARCH64}" \ DEBUG=0 LOG_LEVEL=20 PLAT=tegra SPD=opteed TARGET_SOC=t$PLATFORM V=0 cd ../.. # Get gen_tos_part_img.py. It's usually in the directory # /nv_tegra/tos-scripts/ of BSP package. #2. Generate the tos.img with the commands: $BUILD_DIR/nv_tegra/tos-scripts/gen_tos_part_img.py \ --monitor $BUILD_DIR/source/atf_build/arm-trusted-firmware/build/tegra/t$PLATFORM/release/bl31.bin \ --os $BUILD_DIR/source/public/optee/build/t$PLATFORM/core/tee-raw.bin \ --dtb $BUILD_DIR/source/public/optee/tegra$PLATFORM-optee.dtb \ --tostype optee \ ./tos.img #To verify the image: #1. Replace the default TOS image file with the newly generated TOS # image. The default TOS image file is located at: # /bootloader/tos-optee_t.img cp $BUILD_DIR/bootloader/tos-optee_t$PLATFORM.img $BUILD_DIR/bootloader/tos-optee_t$PLATFORM.img.old echo ----------------------------------------------------------------------------------------- pwd cp ./tos.img $BUILD_DIR/bootloader/tos-optee_t$PLATFORM.img ls -la $BUILD_DIR/bootloader/tos-optee_t$PLATFORM.img