xref: /openwifi/driver/make_all.sh (revision febc5adf733169748a775e25fb7c1837236cb71e)
12ee67178SXianjun Jiao#!/bin/bash
2*febc5adfSXianjun Jiaoif [ "$#" -ne 3 ]; then
3*febc5adfSXianjun Jiao    echo "You must enter exactly 3 arguments: \$OPENWIFI_DIR \$XILINX_DIR ARCH_BIT(32 or 64)"
42ee67178SXianjun Jiao    exit 1
52ee67178SXianjun Jiaofi
62ee67178SXianjun Jiao
7b73660adSXianjun JiaoOPENWIFI_DIR=$1
8b73660adSXianjun JiaoXILINX_DIR=$2
9*febc5adfSXianjun JiaoARCH_OPTION=$3
10b73660adSXianjun Jiao
11b73660adSXianjun Jiaoif [ -f "$OPENWIFI_DIR/LICENSE" ]; then
12b73660adSXianjun Jiao    echo "\$OPENWIFI_DIR is found!"
13b73660adSXianjun Jiaoelse
14b73660adSXianjun Jiao    echo "\$OPENWIFI_DIR is not correct. Please check!"
15b73660adSXianjun Jiao    exit 1
16b73660adSXianjun Jiaofi
17b73660adSXianjun Jiao
18b73660adSXianjun Jiaoif [ -d "$XILINX_DIR/SDK" ]; then
19b73660adSXianjun Jiao    echo "\$XILINX_DIR is found!"
20b73660adSXianjun Jiaoelse
21b73660adSXianjun Jiao    echo "\$XILINX_DIR is not correct. Please check!"
22b73660adSXianjun Jiao    exit 1
23b73660adSXianjun Jiaofi
24b73660adSXianjun Jiao
25*febc5adfSXianjun Jiaoif [ "$ARCH_OPTION" != "32" ] && [ "$ARCH_OPTION" != "64" ]; then
26*febc5adfSXianjun Jiao    echo "\$ARCH_OPTION is not correct. Should be 32 or 64. Please check!"
272ee67178SXianjun Jiao    exit 1
28*febc5adfSXianjun Jiaoelse
29*febc5adfSXianjun Jiao    echo "\$ARCH_OPTION is valid!"
30*febc5adfSXianjun Jiaofi
31*febc5adfSXianjun Jiao
32*febc5adfSXianjun Jiaosource $XILINX_DIR/SDK/2018.3/settings64.sh
33*febc5adfSXianjun Jiaoif [ "$ARCH_OPTION" == "64" ]; then
34*febc5adfSXianjun Jiao    LINUX_KERNEL_SRC_DIR=$OPENWIFI_DIR/adi-linux-64/
35*febc5adfSXianjun Jiao    ARCH="arm64"
36*febc5adfSXianjun Jiao    CROSS_COMPILE="aarch64-linux-gnu-"
37*febc5adfSXianjun Jiaoelse
38*febc5adfSXianjun Jiao    LINUX_KERNEL_SRC_DIR=$OPENWIFI_DIR/adi-linux/
39*febc5adfSXianjun Jiao    ARCH="arm"
40*febc5adfSXianjun Jiao    CROSS_COMPILE="arm-linux-gnueabihf-"
412ee67178SXianjun Jiaofi
422ee67178SXianjun Jiao
432ee67178SXianjun Jiao# check if user entered the right path to analog device linux
44*febc5adfSXianjun Jiaoif [ -d "$LINUX_KERNEL_SRC_DIR" ]; then
45*febc5adfSXianjun Jiao    echo " setup linux kernel path ${LINUX_KERNEL_SRC_DIR}"
462ee67178SXianjun Jiaoelse
47*febc5adfSXianjun Jiao    echo "Error: path to adi linux: ${LINUX_KERNEL_SRC_DIR} not found. Can not continue."
482ee67178SXianjun Jiao    exit 1
492ee67178SXianjun Jiaofi
502ee67178SXianjun Jiao
51*febc5adfSXianjun Jiaoset -x
52*febc5adfSXianjun Jiao
53b73660adSXianjun Jiaohome_dir=$(pwd)
542ee67178SXianjun Jiao
55b73660adSXianjun Jiaocd $OPENWIFI_DIR/driver/
56*febc5adfSXianjun Jiaomake KDIR=$LINUX_KERNEL_SRC_DIR ARCH=$ARCH CROSS_COMPILE=$CROSS_COMPILE
57b73660adSXianjun Jiaocd $OPENWIFI_DIR/driver/openofdm_tx
58*febc5adfSXianjun Jiaomake KDIR=$LINUX_KERNEL_SRC_DIR ARCH=$ARCH CROSS_COMPILE=$CROSS_COMPILE
59b73660adSXianjun Jiaocd $OPENWIFI_DIR/driver/openofdm_rx
60*febc5adfSXianjun Jiaomake KDIR=$LINUX_KERNEL_SRC_DIR ARCH=$ARCH CROSS_COMPILE=$CROSS_COMPILE
61b73660adSXianjun Jiaocd $OPENWIFI_DIR/driver/tx_intf
62*febc5adfSXianjun Jiaomake KDIR=$LINUX_KERNEL_SRC_DIR ARCH=$ARCH CROSS_COMPILE=$CROSS_COMPILE
63b73660adSXianjun Jiaocd $OPENWIFI_DIR/driver/rx_intf
64*febc5adfSXianjun Jiaomake KDIR=$LINUX_KERNEL_SRC_DIR ARCH=$ARCH CROSS_COMPILE=$CROSS_COMPILE
65b73660adSXianjun Jiaocd $OPENWIFI_DIR/driver/xpu
66*febc5adfSXianjun Jiaomake KDIR=$LINUX_KERNEL_SRC_DIR ARCH=$ARCH CROSS_COMPILE=$CROSS_COMPILE
67b73660adSXianjun Jiaocd $OPENWIFI_DIR/driver/ad9361
68*febc5adfSXianjun Jiaomake KDIR=$LINUX_KERNEL_SRC_DIR ARCH=$ARCH CROSS_COMPILE=$CROSS_COMPILE
69b73660adSXianjun Jiaocd $OPENWIFI_DIR/driver/xilinx_dma
70*febc5adfSXianjun Jiao./make_xilinx_dma.sh $OPENWIFI_DIR $XILINX_DIR $ARCH_OPTION
712ee67178SXianjun Jiao
72b73660adSXianjun Jiaocd $home_dir
73