xref: /openwifi/driver/make_all.sh (revision 838a9007cf9f63d72c4524b84ee37e8c5fd046bc)
1#!/bin/bash
2if [ "$#" -ne 3 ]; then
3    echo "You must enter exactly 3 arguments: \$OPENWIFI_DIR \$XILINX_DIR ARCH_BIT(32 or 64)"
4    exit 1
5fi
6
7OPENWIFI_DIR=$1
8XILINX_DIR=$2
9ARCH_OPTION=$3
10
11if [ -f "$OPENWIFI_DIR/LICENSE" ]; then
12    echo "\$OPENWIFI_DIR is found!"
13else
14    echo "\$OPENWIFI_DIR is not correct. Please check!"
15    exit 1
16fi
17
18if [ -d "$XILINX_DIR/SDK" ]; then
19    echo "\$XILINX_DIR is found!"
20else
21    echo "\$XILINX_DIR is not correct. Please check!"
22    exit 1
23fi
24
25if [ "$ARCH_OPTION" != "32" ] && [ "$ARCH_OPTION" != "64" ]; then
26    echo "\$ARCH_OPTION is not correct. Should be 32 or 64. Please check!"
27    exit 1
28else
29    echo "\$ARCH_OPTION is valid!"
30fi
31
32source $XILINX_DIR/SDK/2018.3/settings64.sh
33if [ "$ARCH_OPTION" == "64" ]; then
34    LINUX_KERNEL_SRC_DIR=$OPENWIFI_DIR/adi-linux-64/
35    ARCH="arm64"
36    CROSS_COMPILE="aarch64-linux-gnu-"
37else
38    LINUX_KERNEL_SRC_DIR=$OPENWIFI_DIR/adi-linux/
39    ARCH="arm"
40    CROSS_COMPILE="arm-linux-gnueabihf-"
41fi
42
43# check if user entered the right path to analog device linux
44if [ -d "$LINUX_KERNEL_SRC_DIR" ]; then
45    echo " setup linux kernel path ${LINUX_KERNEL_SRC_DIR}"
46else
47    echo "Error: path to adi linux: ${LINUX_KERNEL_SRC_DIR} not found. Can not continue."
48    exit 1
49fi
50
51set -x
52
53home_dir=$(pwd)
54
55cd $OPENWIFI_DIR/driver/
56make KDIR=$LINUX_KERNEL_SRC_DIR ARCH=$ARCH CROSS_COMPILE=$CROSS_COMPILE
57cd $OPENWIFI_DIR/driver/openofdm_tx
58make KDIR=$LINUX_KERNEL_SRC_DIR ARCH=$ARCH CROSS_COMPILE=$CROSS_COMPILE
59cd $OPENWIFI_DIR/driver/openofdm_rx
60make KDIR=$LINUX_KERNEL_SRC_DIR ARCH=$ARCH CROSS_COMPILE=$CROSS_COMPILE
61cd $OPENWIFI_DIR/driver/tx_intf
62make KDIR=$LINUX_KERNEL_SRC_DIR ARCH=$ARCH CROSS_COMPILE=$CROSS_COMPILE
63cd $OPENWIFI_DIR/driver/rx_intf
64make KDIR=$LINUX_KERNEL_SRC_DIR ARCH=$ARCH CROSS_COMPILE=$CROSS_COMPILE
65cd $OPENWIFI_DIR/driver/xpu
66make KDIR=$LINUX_KERNEL_SRC_DIR ARCH=$ARCH CROSS_COMPILE=$CROSS_COMPILE
67cd $OPENWIFI_DIR/driver/ad9361
68make KDIR=$LINUX_KERNEL_SRC_DIR ARCH=$ARCH CROSS_COMPILE=$CROSS_COMPILE
69cd $OPENWIFI_DIR/driver/xilinx_dma
70./make_xilinx_dma.sh $OPENWIFI_DIR $XILINX_DIR $ARCH_OPTION
71
72cd $home_dir
73