1b73660adSXianjun Jiao#!/bin/bash 2a6085186SLina Ceballos 3596ef126SJiao Xianjun# Author: Xianjun Jiao 4596ef126SJiao Xianjun# SPDX-FileCopyrightText: 2019 UGent 5a6085186SLina Ceballos# SPDX-License-Identifier: AGPL-3.0-or-later 6a6085186SLina Ceballos 7b73660adSXianjun Jiaoif [ "$#" -ne 3 ]; then 8*6ffca2acSXianjun Jiao echo "You must enter exactly 3 arguments: \$XILINX_DIR \$BOARD_NAME DIR_TO_system_top.xsa" 9b73660adSXianjun Jiao exit 1 10b73660adSXianjun Jiaofi 11b73660adSXianjun Jiao 12*6ffca2acSXianjun JiaoXILINX_DIR=$1 13*6ffca2acSXianjun JiaoBOARD_NAME=$2 14*6ffca2acSXianjun JiaoXSA_FILE=$3 15b73660adSXianjun Jiao 16abdb610fSJiao XianjunOPENWIFI_DIR=$(pwd)/../ 17abdb610fSJiao Xianjun 18abdb610fSJiao Xianjunecho OPENWIFI_DIR $OPENWIFI_DIR 19*6ffca2acSXianjun Jiaoecho XSA_FILE $XSA_FILE 20abdb610fSJiao Xianjun 21b73660adSXianjun Jiaoif [ -f "$OPENWIFI_DIR/LICENSE" ]; then 22b73660adSXianjun Jiao echo "\$OPENWIFI_DIR is found!" 23b73660adSXianjun Jiaoelse 24b73660adSXianjun Jiao echo "\$OPENWIFI_DIR is not correct. Please check!" 25b73660adSXianjun Jiao exit 1 26b73660adSXianjun Jiaofi 27b73660adSXianjun Jiao 28*6ffca2acSXianjun Jiaoif [ -d "$XILINX_DIR/Vitis" ]; then 29b73660adSXianjun Jiao echo "\$XILINX_DIR is found!" 30b73660adSXianjun Jiaoelse 31b73660adSXianjun Jiao echo "\$XILINX_DIR is not correct. Please check!" 32b73660adSXianjun Jiao exit 1 33b73660adSXianjun Jiaofi 34b73660adSXianjun Jiao 35*6ffca2acSXianjun Jiao# if [ "$BOARD_NAME" != "antsdr" ] && [ "$BOARD_NAME" != "zc706_fmcs2" ] && [ "$BOARD_NAME" != "zc702_fmcs2" ] && [ "$BOARD_NAME" != "zed_fmcs2" ] && [ "$BOARD_NAME" != "adrv9361z7035" ] && [ "$BOARD_NAME" != "adrv9364z7020" ]; then 36*6ffca2acSXianjun Jiao# echo "\$BOARD_NAME is not correct. Please check!" 37*6ffca2acSXianjun Jiao# exit 1 38*6ffca2acSXianjun Jiao# else 39*6ffca2acSXianjun Jiao# echo "\$BOARD_NAME is found!" 40*6ffca2acSXianjun Jiao# fi 41b73660adSXianjun Jiao 42*6ffca2acSXianjun Jiaoif [ -f "$XSA_FILE" ]; then 43*6ffca2acSXianjun Jiao echo "\$XSA_FILE is found!" 44abdb610fSJiao Xianjunelse 45*6ffca2acSXianjun Jiao echo "\$XSA_FILE is not found. Please check!" 46abdb610fSJiao Xianjun exit 1 47abdb610fSJiao Xianjunfi 48abdb610fSJiao Xianjun 49b73660adSXianjun Jiaohome_dir=$(pwd) 50b73660adSXianjun Jiao 51b73660adSXianjun Jiaoset -ex 52b73660adSXianjun Jiao 53*6ffca2acSXianjun Jiaosource $XILINX_DIR/Vitis/2021.1/settings64.sh 5494847d80SXianjun Jiao 55b73660adSXianjun Jiaocd $OPENWIFI_DIR/kernel_boot 56b73660adSXianjun Jiao 57*6ffca2acSXianjun Jiaoif [ "$BOARD_NAME" == "zcu102_fmcs2" ] || [ "$BOARD_NAME" == "zcu102_9371" ]; then 58*6ffca2acSXianjun Jiao ./build_zynqmp_boot_bin.sh $XSA_FILE boards/$BOARD_NAME/u-boot_xilinx_zynqmp_zcu102_revA.elf boards/$BOARD_NAME/bl31.elf 59*6ffca2acSXianjun Jiaoelif [ "$BOARD_NAME" == "antsdr" ] || [ "$BOARD_NAME" == "zc706_fmcs2" ] || [ "$BOARD_NAME" == "zc702_fmcs2" ] || [ "$BOARD_NAME" == "zed_fmcs2" ] || [ "$BOARD_NAME" == "adrv9361z7035" ] || [ "$BOARD_NAME" == "adrv9364z7020" ]; then 60*6ffca2acSXianjun Jiao ./build_boot_bin.sh $XSA_FILE boards/$BOARD_NAME/u-boot.elf 61*6ffca2acSXianjun Jiaoelse 62*6ffca2acSXianjun Jiao echo "\$BOARD_NAME is not correct. Please check!" 63*6ffca2acSXianjun Jiao cd $home_dir 64*6ffca2acSXianjun Jiao exit 1 65*6ffca2acSXianjun Jiaofi 66*6ffca2acSXianjun Jiao 67*6ffca2acSXianjun Jiaorm -rf build_boot_bin 68*6ffca2acSXianjun Jiaorm -rf boards/$BOARD_NAME/output_boot_bin 69*6ffca2acSXianjun Jiaomv output_boot_bin boards/$BOARD_NAME/ 70b73660adSXianjun Jiao 71b73660adSXianjun Jiaocd $home_dir 72