xref: /openwifi/driver/make_all.sh (revision 109b1cfd3a647e0550020bbd01dff1346ca9b8f4)
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-"
42*109b1cfdSXianjun Jiao    echo "#define USE_NEW_RX_INTERRUPT 1" > pre_def.h
43febc5adfSXianjun Jiaoelse
44febc5adfSXianjun Jiao    LINUX_KERNEL_SRC_DIR=$OPENWIFI_DIR/adi-linux/
45febc5adfSXianjun Jiao    ARCH="arm"
46febc5adfSXianjun Jiao    CROSS_COMPILE="arm-linux-gnueabihf-"
47*109b1cfdSXianjun Jiao    echo "#define USE_NEW_RX_INTERRUPT 1" > pre_def.h
482ee67178SXianjun Jiaofi
492ee67178SXianjun Jiao
502ee67178SXianjun Jiao# check if user entered the right path to analog device linux
51febc5adfSXianjun Jiaoif [ -d "$LINUX_KERNEL_SRC_DIR" ]; then
52febc5adfSXianjun Jiao    echo " setup linux kernel path ${LINUX_KERNEL_SRC_DIR}"
532ee67178SXianjun Jiaoelse
54febc5adfSXianjun Jiao    echo "Error: path to adi linux: ${LINUX_KERNEL_SRC_DIR} not found. Can not continue."
552ee67178SXianjun Jiao    exit 1
562ee67178SXianjun Jiaofi
572ee67178SXianjun Jiao
58febc5adfSXianjun Jiaoset -x
59febc5adfSXianjun Jiao
60b73660adSXianjun Jiaohome_dir=$(pwd)
612ee67178SXianjun Jiao
62b73660adSXianjun Jiaocd $OPENWIFI_DIR/driver/
630a92505dSXianjun Jiaoecho "#define GIT_REV 0x"$(git log -1 --pretty=%h) > git_rev.h
64febc5adfSXianjun Jiaomake KDIR=$LINUX_KERNEL_SRC_DIR ARCH=$ARCH CROSS_COMPILE=$CROSS_COMPILE
65b73660adSXianjun Jiaocd $OPENWIFI_DIR/driver/openofdm_tx
66febc5adfSXianjun Jiaomake KDIR=$LINUX_KERNEL_SRC_DIR ARCH=$ARCH CROSS_COMPILE=$CROSS_COMPILE
67b73660adSXianjun Jiaocd $OPENWIFI_DIR/driver/openofdm_rx
68febc5adfSXianjun Jiaomake KDIR=$LINUX_KERNEL_SRC_DIR ARCH=$ARCH CROSS_COMPILE=$CROSS_COMPILE
69b73660adSXianjun Jiaocd $OPENWIFI_DIR/driver/tx_intf
70febc5adfSXianjun Jiaomake KDIR=$LINUX_KERNEL_SRC_DIR ARCH=$ARCH CROSS_COMPILE=$CROSS_COMPILE
71b73660adSXianjun Jiaocd $OPENWIFI_DIR/driver/rx_intf
72febc5adfSXianjun Jiaomake KDIR=$LINUX_KERNEL_SRC_DIR ARCH=$ARCH CROSS_COMPILE=$CROSS_COMPILE
73b73660adSXianjun Jiaocd $OPENWIFI_DIR/driver/xpu
74febc5adfSXianjun Jiaomake KDIR=$LINUX_KERNEL_SRC_DIR ARCH=$ARCH CROSS_COMPILE=$CROSS_COMPILE
7556fcab20SXianjun Jiao# cd $OPENWIFI_DIR/driver/ad9361
7656fcab20SXianjun Jiao# make KDIR=$LINUX_KERNEL_SRC_DIR ARCH=$ARCH CROSS_COMPILE=$CROSS_COMPILE
772ee67178SXianjun Jiao
78b73660adSXianjun Jiaocd $home_dir
79