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