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