#!/bin/bash # static declare BLX_BIN_SUB_CHIP="${CONFIG_CHIPSET_NAME}" if [ -n "${SCRIPT_ARG_CHIPSET_VARIANT}" ]; then declare CHIPSET_VARIANT_SUFFIX=".${SCRIPT_ARG_CHIPSET_VARIANT}" elif [ -n "${CONFIG_CHIPSET_VARIANT}" ]; then declare CHIPSET_VARIANT_SUFFIX=".${CONFIG_CHIPSET_VARIANT}" else declare CHIPSET_VARIANT_SUFFIX="" fi declare -a BLX_NAME=("bl2" \ "bl2" \ "bl2e" \ "bl2e" \ "bl2x" \ "bl31" \ "bl32" \ "bl40" \ "bl30") declare -a BLX_SRC_FOLDER=("bl2/core" \ "bl2/core" \ "bl2/ree" \ "bl2/ree" \ "bl2/tee" \ "bl31/bl31_2.7/src" \ "bl32/bl32_3.18/src" \ "NULL" \ "bl30/src_ao" \ "bl33") declare -a BLX_BIN_FOLDER=("bl2/bin" \ "bl2/bin" \ "bl2/bin" \ "bl2/bin" \ "bl2/bin" \ "bl31/bl31_2.7/bin" \ "bl32/bl32_3.18/bin"\ "bl40/bin" \ "bl30/bin_ao") if [ "y" == "${CONFIG_BUILD_UNSIGN}" ]; then declare -a BLX_BIN_NAME=("bl2.bin.sto" \ "bl2.bin.usb" \ "bl2e.bin.sto" \ "bl2e.bin.usb" \ "bl2x.bin" \ "bl31.bin" \ "bl32.bin" \ "bl40.bin" \ "NULL") elif [ -n "$CHIPSET_VARIANT_SUFFIX" ]; then declare -a BLX_BIN_NAME=("bb1st.sto${CHIPSET_VARIANT_SUFFIX}.bin.signed.${DV_SIGNING_SCHEME}.${CS_SIGNING_SCHEME}" \ "bb1st.usb${CHIPSET_VARIANT_SUFFIX}.bin.signed.${DV_SIGNING_SCHEME}.${CS_SIGNING_SCHEME}" \ "blob-bl2e.sto${CHIPSET_VARIANT_SUFFIX}.bin.signed.${DV_SIGNING_SCHEME}.${CS_SIGNING_SCHEME}" \ "blob-bl2e.usb${CHIPSET_VARIANT_SUFFIX}.bin.signed.${DV_SIGNING_SCHEME}.${CS_SIGNING_SCHEME}" \ "blob-bl2x.bin.signed.rsa-mldsa.${CS_SIGNING_SCHEME}" \ "blob-bl31.bin.signed.rsa-mldsa.${CS_SIGNING_SCHEME}" \ "blob-bl32.bin.signed.rsa-mldsa.${CS_SIGNING_SCHEME}" \ "blob-bl40.bin.signed.rsa-mldsa.${CS_SIGNING_SCHEME}" \ "bl30.bin") else declare -a BLX_BIN_NAME=("bb1st.sto.bin.signed.rsa-mldsa.${CS_SIGNING_SCHEME}" \ "bb1st.usb.bin.signed.rsa-mldsa.${CS_SIGNING_SCHEME}" \ "blob-bl2e.sto.bin.signed.rsa-mldsa.${CS_SIGNING_SCHEME}" \ "blob-bl2e.usb.bin.signed.rsa-mldsa.${CS_SIGNING_SCHEME}" \ "blob-bl2x.bin.signed.rsa-mldsa.${CS_SIGNING_SCHEME}" \ "blob-bl31.bin.signed.rsa-mldsa.${CS_SIGNING_SCHEME}" \ "blob-bl32.bin.signed.rsa-mldsa.${CS_SIGNING_SCHEME}" \ "blob-bl40.bin.signed.rsa-mldsa.${CS_SIGNING_SCHEME}" \ "bl30.bin") fi declare -a BLX_BIN_SIZE=("272384" \ "272384" \ "116912" \ "116912" \ "108720" \ "266240" \ "528384" \ "102400" \ "NULL") declare BL30_BIN_SIZE="90112" declare BL33_BIN_SIZE="1572864" declare DEV_ACS_BIN_SIZE="7168" declare -a BLX_RAWBIN_NAME=("bl2.bin.sto" \ "bl2.bin.usb" \ "bl2e.bin.sto" \ "bl2e.bin.usb" \ "bl2x.bin" \ "bl31.bin" \ "bl32.bin" \ "bl40.bin" \ "NULL") declare -a BLX_IMG_NAME=("NULL" \ "NULL" \ "NULL" \ "NULL" \ "NULL" \ "NULL" \ "NULL" \ "NULL") declare -a BLX_NEEDFUL=("true" \ "true" \ "true" \ "true" \ "true" \ "ture" \ "true" \ "true") declare -a BLX_SRC_GIT=("bootloader/amlogic-advanced-bootloader/core" \ "bootloader/amlogic-advanced-bootloader/core" \ "bootloader/amlogic-advanced-bootloader/ree" \ "bootloader/amlogic-advanced-bootloader/ree" \ "bootloader/amlogic-advanced-bootloader/tee" \ "ARM-software/arm-trusted-firmware" \ "OP-TEE/optee_os" \ "firmware/aocpu" \ "uboot") declare -a BLX_BIN_GIT=("firmware/bin/bl2" \ "firmware/bin/bl2" \ "firmware/bin/bl2" \ "firmware/bin/bl2" \ "firmware/bin/bl2" \ "firmware/bin/bl31"\ "firmware/bin/bl32"\ "firmware/bin/b40") # blx priority. null: default, source: src code, others: bin path declare -a BIN_PATH=("null" \ "null" \ "null" \ "null" \ "null" \ "null" \ "null" \ "null" \ "source") # variables declare -a CUR_REV # current version of each blx declare -a BLX_READY=("false", \ "false", \ "false", \ "false", \ "false", \ "false", \ "false", \ "false", \ "false") # blx build/get flag # package variables declare BL33_COMPRESS_FLAG="" declare BL3X_SUFFIX="bin" declare V3_PROCESS_FLAG="" declare FIP_ARGS="" declare AML_BL2_NAME="" declare AML_KEY_BLOB_NAME="" declare FIP_BL32_PROCESS="" declare BOOT_SIG_FLAG="" declare EFUSE_GEN_FLAG="" declare DDRFW_TYPE="" BUILD_PATH=${FIP_BUILD_FOLDER} BUILD_PAYLOAD=${FIP_BUILD_FOLDER}/payload CHIPSET_TEMPLATES_PATH="soc/templates" CONFIG_DDR_FW=0 DDR_FW_NAME="aml_ddr.fw" CONFIG_NEED_BL32=y ADVANCED_BOOTLOADER=1 declare CONFIG_RTOS_SDK_ENABLE=1 declare CONFIG_SOC_NAME="s6" if [ "${BL30_SELECT}" == "s6_bl201" ]; then declare CONFIG_BOARD_PACKAGE_NAME="bl201_s905x5" elif [ "${BL30_SELECT}" == "s6_bl204" ]; then declare CONFIG_BOARD_PACKAGE_NAME="bl204_s905x5" elif [ "${BL30_SELECT}" == "s6_bl208" ]; then declare CONFIG_BOARD_PACKAGE_NAME="bl208_s905x5" elif [ "${BL30_SELECT}" == "s6_bl209" ]; then declare CONFIG_BOARD_PACKAGE_NAME="bl209_s905x5" elif [ "${BL30_SELECT}" == "s6_bq201" ]; then declare CONFIG_BOARD_PACKAGE_NAME="bq201_s905d5" elif [ "${BL30_SELECT}" == "s6_bq208" ]; then declare CONFIG_BOARD_PACKAGE_NAME="bq208_s905d5" elif [ "${BL30_SELECT}" == "s6_bq209" ]; then declare CONFIG_BOARD_PACKAGE_NAME="bq209_s905d5" elif [ "${BL30_SELECT}" == "s6_bq210" ]; then declare CONFIG_BOARD_PACKAGE_NAME="bq210_s905l5a" elif [ "${BL30_SELECT}" == "s6_bq220" ]; then declare CONFIG_BOARD_PACKAGE_NAME="bq220_a311y2s" elif [ "${BL30_SELECT}" == "s6_bq230" ]; then declare CONFIG_BOARD_PACKAGE_NAME="bq230_a311y2" elif [ "${BL30_SELECT}" == "s6_bn201" ]; then declare CONFIG_BOARD_PACKAGE_NAME="bn201_s905x5l" elif [ "${BL30_SELECT}" == "s6_raman_ai" ]; then declare CONFIG_BOARD_PACKAGE_NAME="raman_ai_s905x5" elif [ "${BL30_SELECT}" == "s6_adt5" ]; then declare CONFIG_BOARD_PACKAGE_NAME="adt5_s905x5" elif [ "${BL30_SELECT}" == "s6_skt" ]; then declare CONFIG_BOARD_PACKAGE_NAME="s6_skt" else echo "Error: bl30 board not found... abort. Please check 'BL30_SELECT' and fip!" exit 1 fi