xref: /openwifi/driver/xilinx_dma/make_xilinx_dma.sh (revision 1ed5453a9ad8cc52268adba2a2f2b43846795702)
12ee67178SXianjun Jiao#!/bin/bash
2a6085186SLina Ceballos
3*1ed5453aSJiao Xianjun# Author: Xianjun Jiao
4*1ed5453aSJiao 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(32 or 64)"
9febc5adfSXianjun Jiao    exit 1
10febc5adfSXianjun Jiaofi
112ee67178SXianjun Jiao
122ee67178SXianjun JiaoWORKDIR=$PWD
13febc5adfSXianjun JiaoOPENWIFI_DIR=$1
14febc5adfSXianjun JiaoXILINX_DIR=$2
15febc5adfSXianjun JiaoARCH_OPTION=$3
162ee67178SXianjun Jiao
17febc5adfSXianjun Jiaoset -x
18febc5adfSXianjun Jiao
19febc5adfSXianjun Jiaoif [ -f "$OPENWIFI_DIR/LICENSE" ]; then
20febc5adfSXianjun Jiao    echo "\$OPENWIFI_DIR is found!"
21febc5adfSXianjun Jiaoelse
22febc5adfSXianjun Jiao    echo "\$OPENWIFI_DIR is not correct. Please check!"
23febc5adfSXianjun Jiao    exit 1
24febc5adfSXianjun Jiaofi
25febc5adfSXianjun Jiao
26febc5adfSXianjun Jiaoif [ -d "$XILINX_DIR/SDK" ]; then
27febc5adfSXianjun Jiao    echo "\$XILINX_DIR is found!"
28febc5adfSXianjun Jiaoelse
29febc5adfSXianjun Jiao    echo "\$XILINX_DIR is not correct. Please check!"
30febc5adfSXianjun Jiao    exit 1
31febc5adfSXianjun Jiaofi
32febc5adfSXianjun Jiao
33febc5adfSXianjun Jiaoif [ "$ARCH_OPTION" != "32" ] && [ "$ARCH_OPTION" != "64" ]; then
34febc5adfSXianjun Jiao    echo "\$ARCH_OPTION is not correct. Should be 32 or 64. Please check!"
35febc5adfSXianjun Jiao    exit 1
36febc5adfSXianjun Jiaoelse
37febc5adfSXianjun Jiao    echo "\$ARCH_OPTION is valid!"
38febc5adfSXianjun Jiaofi
39febc5adfSXianjun Jiao
40febc5adfSXianjun Jiaosource $XILINX_DIR/SDK/2018.3/settings64.sh
41febc5adfSXianjun Jiaoif [ "$ARCH_OPTION" == "64" ]; then
42febc5adfSXianjun Jiao    KDIR=$OPENWIFI_DIR/adi-linux-64/
43febc5adfSXianjun Jiao    export ARCH=arm64
44febc5adfSXianjun Jiao    export CROSS_COMPILE=aarch64-linux-gnu-
45febc5adfSXianjun Jiaoelse
46febc5adfSXianjun Jiao    KDIR=$OPENWIFI_DIR/adi-linux/
472ee67178SXianjun Jiao    export ARCH=arm
482ee67178SXianjun Jiao    export CROSS_COMPILE=arm-linux-gnueabihf-
49febc5adfSXianjun Jiaofi
502ee67178SXianjun Jiao
51febc5adfSXianjun JiaoSUBMODULE=xilinx_dma
52febc5adfSXianjun Jiao
53febc5adfSXianjun Jiaocp $KDIR/drivers/dma/xilinx/xilinx_dma.c $KDIR/drivers/dma/xilinx/xilinx_dma.c.bak
542ee67178SXianjun Jiaocp xilinx_dma.c $KDIR/drivers/dma/xilinx -rf
552ee67178SXianjun Jiaocd $KDIR
562ee67178SXianjun Jiaomake $KDIR/drivers/dma/xilinx/$SUBMODULE.ko
572ee67178SXianjun Jiaocp $KDIR/drivers/dma/xilinx/$SUBMODULE.ko $WORKDIR -rf
58febc5adfSXianjun Jiao# cp $KDIR/drivers/dma/xilinx/xilinx_dma.c.bak $KDIR/drivers/dma/xilinx/xilinx_dma.c
592ee67178SXianjun Jiaocd $WORKDIR
602ee67178SXianjun Jiaols $SUBMODULE.ko
61