xref: /openwifi/user_space/boot_bin_gen.sh (revision 0dc81d985e5862bcd08b56b692b53312fb4fce95)
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: \$OPENWIFI_HW_DIR \$XILINX_DIR \$BOARD_NAME"
9    exit 1
10fi
11
12OPENWIFI_HW_DIR=$1
13XILINX_DIR=$2
14BOARD_NAME=$3
15
16OPENWIFI_DIR=$(pwd)/../
17
18echo OPENWIFI_DIR $OPENWIFI_DIR
19echo OPENWIFI_HW_DIR $OPENWIFI_HW_DIR
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/SDK" ]; then
29    echo "\$XILINX_DIR is found!"
30else
31    echo "\$XILINX_DIR is not correct. Please check!"
32    exit 1
33fi
34
35if [ "$BOARD_NAME" != "antsdr" ] && [ "$BOARD_NAME" != "antsdr_e200" ] && [ "$BOARD_NAME" != "sdrpi" ] && [ "$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
38else
39    echo "\$BOARD_NAME is found!"
40fi
41
42if [ -d "$OPENWIFI_HW_DIR/boards/$BOARD_NAME" ]; then
43    echo "\$OPENWIFI_HW_DIR is found!"
44else
45    echo "\$OPENWIFI_HW_DIR is not correct. Please check!"
46    exit 1
47fi
48
49home_dir=$(pwd)
50
51set -ex
52
53# check if user entered the right path to SDK
54source $XILINX_DIR/SDK/2018.3/settings64.sh
55
56# uncompress the system.hdf and system_top.bit for use
57mkdir -p hdf_and_bit
58tar -zxvf $OPENWIFI_HW_DIR/boards/$BOARD_NAME/sdk/system_top_hw_platform_0/hdf_and_bit.tar.gz -C ./hdf_and_bit
59cp ./hdf_and_bit/$BOARD_NAME/sdk/system_top_hw_platform_0/system.hdf $OPENWIFI_HW_DIR/boards/$BOARD_NAME/sdk/system_top_hw_platform_0/ -rf
60cp ./hdf_and_bit/$BOARD_NAME/sdk/system_top_hw_platform_0/system_top.bit $OPENWIFI_HW_DIR/boards/$BOARD_NAME/sdk/system_top_hw_platform_0/ -rf
61
62cd $OPENWIFI_DIR/kernel_boot
63
64./build_boot_bin.sh $OPENWIFI_HW_DIR $BOARD_NAME
65
66cd $home_dir
67