xref: /openwifi/driver/make_all.sh (revision 56fcab20440ce9d4e3ace884ccd9a4ffd50e706f)
12ee67178SXianjun Jiao#!/bin/bash
2a6085186SLina Ceballos
39e463211SJiao Xianjun# Author: Xianjun jiao
49e463211SJiao Xianjun# SPDX-FileCopyrightText: 2019 UGent
5a6085186SLina Ceballos# SPDX-License-Identifier: AGPL-3.0-or-later
6a6085186SLina Ceballos
7febc5adfSXianjun Jiaoif [ "$#" -ne 3 ]; then
8febc5adfSXianjun Jiao    echo "You must enter exactly 3 arguments: \$OPENWIFI_DIR \$XILINX_DIR ARCH_BIT(32 or 64)"
92ee67178SXianjun Jiao    exit 1
102ee67178SXianjun Jiaofi
112ee67178SXianjun Jiao
12b73660adSXianjun JiaoOPENWIFI_DIR=$1
13b73660adSXianjun JiaoXILINX_DIR=$2
14febc5adfSXianjun JiaoARCH_OPTION=$3
15b73660adSXianjun Jiao
16b73660adSXianjun Jiaoif [ -f "$OPENWIFI_DIR/LICENSE" ]; then
17b73660adSXianjun Jiao    echo "\$OPENWIFI_DIR is found!"
18b73660adSXianjun Jiaoelse
19b73660adSXianjun Jiao    echo "\$OPENWIFI_DIR is not correct. Please check!"
20b73660adSXianjun Jiao    exit 1
21b73660adSXianjun Jiaofi
22b73660adSXianjun Jiao
23b73660adSXianjun Jiaoif [ -d "$XILINX_DIR/SDK" ]; then
24b73660adSXianjun Jiao    echo "\$XILINX_DIR is found!"
25b73660adSXianjun Jiaoelse
26b73660adSXianjun Jiao    echo "\$XILINX_DIR is not correct. Please check!"
27b73660adSXianjun Jiao    exit 1
28b73660adSXianjun Jiaofi
29b73660adSXianjun Jiao
30febc5adfSXianjun Jiaoif [ "$ARCH_OPTION" != "32" ] && [ "$ARCH_OPTION" != "64" ]; then
31febc5adfSXianjun Jiao    echo "\$ARCH_OPTION is not correct. Should be 32 or 64. Please check!"
322ee67178SXianjun Jiao    exit 1
33febc5adfSXianjun Jiaoelse
34febc5adfSXianjun Jiao    echo "\$ARCH_OPTION is valid!"
35febc5adfSXianjun Jiaofi
36febc5adfSXianjun Jiao
37febc5adfSXianjun Jiaosource $XILINX_DIR/SDK/2018.3/settings64.sh
38febc5adfSXianjun Jiaoif [ "$ARCH_OPTION" == "64" ]; then
39febc5adfSXianjun Jiao    LINUX_KERNEL_SRC_DIR=$OPENWIFI_DIR/adi-linux-64/
40febc5adfSXianjun Jiao    ARCH="arm64"
41febc5adfSXianjun Jiao    CROSS_COMPILE="aarch64-linux-gnu-"
42febc5adfSXianjun Jiaoelse
43febc5adfSXianjun Jiao    LINUX_KERNEL_SRC_DIR=$OPENWIFI_DIR/adi-linux/
44febc5adfSXianjun Jiao    ARCH="arm"
45febc5adfSXianjun Jiao    CROSS_COMPILE="arm-linux-gnueabihf-"
462ee67178SXianjun Jiaofi
472ee67178SXianjun Jiao
482ee67178SXianjun Jiao# check if user entered the right path to analog device linux
49febc5adfSXianjun Jiaoif [ -d "$LINUX_KERNEL_SRC_DIR" ]; then
50febc5adfSXianjun Jiao    echo " setup linux kernel path ${LINUX_KERNEL_SRC_DIR}"
512ee67178SXianjun Jiaoelse
52febc5adfSXianjun Jiao    echo "Error: path to adi linux: ${LINUX_KERNEL_SRC_DIR} not found. Can not continue."
532ee67178SXianjun Jiao    exit 1
542ee67178SXianjun Jiaofi
552ee67178SXianjun Jiao
56febc5adfSXianjun Jiaoset -x
57febc5adfSXianjun Jiao
58b73660adSXianjun Jiaohome_dir=$(pwd)
592ee67178SXianjun Jiao
60b73660adSXianjun Jiaocd $OPENWIFI_DIR/driver/
610a92505dSXianjun Jiaoecho "#define GIT_REV 0x"$(git log -1 --pretty=%h) > git_rev.h
62febc5adfSXianjun Jiaomake KDIR=$LINUX_KERNEL_SRC_DIR ARCH=$ARCH CROSS_COMPILE=$CROSS_COMPILE
63b73660adSXianjun Jiaocd $OPENWIFI_DIR/driver/openofdm_tx
64febc5adfSXianjun Jiaomake KDIR=$LINUX_KERNEL_SRC_DIR ARCH=$ARCH CROSS_COMPILE=$CROSS_COMPILE
65b73660adSXianjun Jiaocd $OPENWIFI_DIR/driver/openofdm_rx
66febc5adfSXianjun Jiaomake KDIR=$LINUX_KERNEL_SRC_DIR ARCH=$ARCH CROSS_COMPILE=$CROSS_COMPILE
67b73660adSXianjun Jiaocd $OPENWIFI_DIR/driver/tx_intf
68febc5adfSXianjun Jiaomake KDIR=$LINUX_KERNEL_SRC_DIR ARCH=$ARCH CROSS_COMPILE=$CROSS_COMPILE
69b73660adSXianjun Jiaocd $OPENWIFI_DIR/driver/rx_intf
70febc5adfSXianjun Jiaomake KDIR=$LINUX_KERNEL_SRC_DIR ARCH=$ARCH CROSS_COMPILE=$CROSS_COMPILE
71b73660adSXianjun Jiaocd $OPENWIFI_DIR/driver/xpu
72febc5adfSXianjun Jiaomake KDIR=$LINUX_KERNEL_SRC_DIR ARCH=$ARCH CROSS_COMPILE=$CROSS_COMPILE
73*56fcab20SXianjun Jiao# cd $OPENWIFI_DIR/driver/ad9361
74*56fcab20SXianjun Jiao# make KDIR=$LINUX_KERNEL_SRC_DIR ARCH=$ARCH CROSS_COMPILE=$CROSS_COMPILE
752ee67178SXianjun Jiao
76b73660adSXianjun Jiaocd $home_dir
77