xref: /openwifi/driver/xilinx_dma/make_xilinx_dma.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(32 or 64)"
8febc5adfSXianjun Jiao    exit 1
9febc5adfSXianjun Jiaofi
102ee67178SXianjun Jiao
112ee67178SXianjun JiaoWORKDIR=$PWD
12febc5adfSXianjun JiaoOPENWIFI_DIR=$1
13febc5adfSXianjun JiaoXILINX_DIR=$2
14febc5adfSXianjun JiaoARCH_OPTION=$3
152ee67178SXianjun Jiao
16febc5adfSXianjun Jiaoset -x
17febc5adfSXianjun Jiao
18febc5adfSXianjun Jiaoif [ -f "$OPENWIFI_DIR/LICENSE" ]; then
19febc5adfSXianjun Jiao    echo "\$OPENWIFI_DIR is found!"
20febc5adfSXianjun Jiaoelse
21febc5adfSXianjun Jiao    echo "\$OPENWIFI_DIR is not correct. Please check!"
22febc5adfSXianjun Jiao    exit 1
23febc5adfSXianjun Jiaofi
24febc5adfSXianjun Jiao
25febc5adfSXianjun Jiaoif [ -d "$XILINX_DIR/SDK" ]; then
26febc5adfSXianjun Jiao    echo "\$XILINX_DIR is found!"
27febc5adfSXianjun Jiaoelse
28febc5adfSXianjun Jiao    echo "\$XILINX_DIR is not correct. Please check!"
29febc5adfSXianjun Jiao    exit 1
30febc5adfSXianjun Jiaofi
31febc5adfSXianjun Jiao
32febc5adfSXianjun Jiaoif [ "$ARCH_OPTION" != "32" ] && [ "$ARCH_OPTION" != "64" ]; then
33febc5adfSXianjun Jiao    echo "\$ARCH_OPTION is not correct. Should be 32 or 64. Please check!"
34febc5adfSXianjun Jiao    exit 1
35febc5adfSXianjun Jiaoelse
36febc5adfSXianjun Jiao    echo "\$ARCH_OPTION is valid!"
37febc5adfSXianjun Jiaofi
38febc5adfSXianjun Jiao
39febc5adfSXianjun Jiaosource $XILINX_DIR/SDK/2018.3/settings64.sh
40febc5adfSXianjun Jiaoif [ "$ARCH_OPTION" == "64" ]; then
41febc5adfSXianjun Jiao    KDIR=$OPENWIFI_DIR/adi-linux-64/
42febc5adfSXianjun Jiao    export ARCH=arm64
43febc5adfSXianjun Jiao    export CROSS_COMPILE=aarch64-linux-gnu-
44febc5adfSXianjun Jiaoelse
45febc5adfSXianjun Jiao    KDIR=$OPENWIFI_DIR/adi-linux/
462ee67178SXianjun Jiao    export ARCH=arm
472ee67178SXianjun Jiao    export CROSS_COMPILE=arm-linux-gnueabihf-
48febc5adfSXianjun Jiaofi
492ee67178SXianjun Jiao
50febc5adfSXianjun JiaoSUBMODULE=xilinx_dma
51febc5adfSXianjun Jiao
52febc5adfSXianjun Jiaocp $KDIR/drivers/dma/xilinx/xilinx_dma.c $KDIR/drivers/dma/xilinx/xilinx_dma.c.bak
532ee67178SXianjun Jiaocp xilinx_dma.c $KDIR/drivers/dma/xilinx -rf
542ee67178SXianjun Jiaocd $KDIR
552ee67178SXianjun Jiaomake $KDIR/drivers/dma/xilinx/$SUBMODULE.ko
562ee67178SXianjun Jiaocp $KDIR/drivers/dma/xilinx/$SUBMODULE.ko $WORKDIR -rf
57febc5adfSXianjun Jiao# cp $KDIR/drivers/dma/xilinx/xilinx_dma.c.bak $KDIR/drivers/dma/xilinx/xilinx_dma.c
582ee67178SXianjun Jiaocd $WORKDIR
592ee67178SXianjun Jiaols $SUBMODULE.ko
60