xref: /openwifi/driver/side_ch/make_driver.sh (revision eb6347176cb94c7c9400e6ef244f57bb19016988)
1#!/bin/bash
2
3# Author: Xianjun Jiao, Wei Liu
4# SPDX-FileCopyrightText: 2019 UGent
5# SPDX-License-Identifier: AGPL-3.0-or-later
6
7if [ "$#" -ne 2 ]; then
8    echo "You must enter exactly 2 arguments: \$XILINX_DIR ARCH_BIT(32 or 64)"
9    exit 1
10fi
11
12OPENWIFI_DIR=$(pwd)/../../
13XILINX_DIR=$1
14ARCH_OPTION=$2
15
16if [ -f "$OPENWIFI_DIR/LICENSE" ]; then
17    echo "\$OPENWIFI_DIR is found!"
18else
19    echo "\$OPENWIFI_DIR is not correct. Please check!"
20    exit 1
21fi
22
23if [ -d "$XILINX_DIR/Vitis" ]; then
24    echo "\$XILINX_DIR is found!"
25else
26    echo "\$XILINX_DIR is not correct. Please check!"
27    exit 1
28fi
29
30if [ "$ARCH_OPTION" != "32" ] && [ "$ARCH_OPTION" != "64" ]; then
31    echo "\$ARCH_OPTION is not correct. Should be 32 or 64. Please check!"
32    exit 1
33else
34    echo "\$ARCH_OPTION is valid!"
35fi
36
37source $XILINX_DIR/Vitis/2021.1/settings64.sh
38if [ "$ARCH_OPTION" == "64" ]; then
39    LINUX_KERNEL_SRC_DIR=$OPENWIFI_DIR/adi-linux-64/
40    ARCH="arm64"
41    CROSS_COMPILE="aarch64-linux-gnu-"
42else
43    LINUX_KERNEL_SRC_DIR=$OPENWIFI_DIR/adi-linux/
44    ARCH="arm"
45    CROSS_COMPILE="arm-linux-gnueabihf-"
46fi
47
48# check if user entered the right path to analog device linux
49if [ -d "$LINUX_KERNEL_SRC_DIR" ]; then
50    echo " setup linux kernel path ${LINUX_KERNEL_SRC_DIR}"
51else
52    echo "Error: path to adi linux: ${LINUX_KERNEL_SRC_DIR} not found. Can not continue."
53    exit 1
54fi
55
56set -x
57
58home_dir=$(pwd)
59
60cd $OPENWIFI_DIR/driver/side_ch
61make KDIR=$LINUX_KERNEL_SRC_DIR ARCH=$ARCH CROSS_COMPILE=$CROSS_COMPILE
62
63cd $home_dir
64