xref: /openwifi/user_space/boot_bin_gen.sh (revision 6ffca2ac8f2eba95591c1471d78f21f17dc419ce)
1#!/bin/bash
2
3# Author: Xianjun Jiao
4# SPDX-FileCopyrightText: 2019 UGent
5# SPDX-License-Identifier: AGPL-3.0-or-later
6
7if [ "$#" -ne 3 ]; then
8    echo "You must enter exactly 3 arguments: \$XILINX_DIR \$BOARD_NAME DIR_TO_system_top.xsa"
9    exit 1
10fi
11
12XILINX_DIR=$1
13BOARD_NAME=$2
14XSA_FILE=$3
15
16OPENWIFI_DIR=$(pwd)/../
17
18echo OPENWIFI_DIR $OPENWIFI_DIR
19echo XSA_FILE $XSA_FILE
20
21if [ -f "$OPENWIFI_DIR/LICENSE" ]; then
22    echo "\$OPENWIFI_DIR is found!"
23else
24    echo "\$OPENWIFI_DIR is not correct. Please check!"
25    exit 1
26fi
27
28if [ -d "$XILINX_DIR/Vitis" ]; then
29    echo "\$XILINX_DIR is found!"
30else
31    echo "\$XILINX_DIR is not correct. Please check!"
32    exit 1
33fi
34
35# if [ "$BOARD_NAME" != "antsdr" ] && [ "$BOARD_NAME" != "zc706_fmcs2" ] && [ "$BOARD_NAME" != "zc702_fmcs2" ] && [ "$BOARD_NAME" != "zed_fmcs2" ] && [ "$BOARD_NAME" != "adrv9361z7035" ] && [ "$BOARD_NAME" != "adrv9364z7020" ]; then
36#     echo "\$BOARD_NAME is not correct. Please check!"
37#     exit 1
38# else
39#     echo "\$BOARD_NAME is found!"
40# fi
41
42if [ -f "$XSA_FILE" ]; then
43    echo "\$XSA_FILE is found!"
44else
45    echo "\$XSA_FILE is not found. Please check!"
46    exit 1
47fi
48
49home_dir=$(pwd)
50
51set -ex
52
53source $XILINX_DIR/Vitis/2021.1/settings64.sh
54
55cd $OPENWIFI_DIR/kernel_boot
56
57if [ "$BOARD_NAME" == "zcu102_fmcs2" ] || [ "$BOARD_NAME" == "zcu102_9371" ]; then
58  ./build_zynqmp_boot_bin.sh $XSA_FILE boards/$BOARD_NAME/u-boot_xilinx_zynqmp_zcu102_revA.elf boards/$BOARD_NAME/bl31.elf
59elif [ "$BOARD_NAME" == "antsdr" ] || [ "$BOARD_NAME" == "zc706_fmcs2" ] || [ "$BOARD_NAME" == "zc702_fmcs2" ] || [ "$BOARD_NAME" == "zed_fmcs2" ] || [ "$BOARD_NAME" == "adrv9361z7035" ] || [ "$BOARD_NAME" == "adrv9364z7020" ]; then
60  ./build_boot_bin.sh $XSA_FILE boards/$BOARD_NAME/u-boot.elf
61else
62  echo "\$BOARD_NAME is not correct. Please check!"
63  cd $home_dir
64  exit 1
65fi
66
67rm -rf build_boot_bin
68rm -rf boards/$BOARD_NAME/output_boot_bin
69mv output_boot_bin boards/$BOARD_NAME/
70
71cd $home_dir
72