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(32 or 64)" 4*febc5adfSXianjun Jiao exit 1 5*febc5adfSXianjun Jiaofi 62ee67178SXianjun Jiao 72ee67178SXianjun JiaoWORKDIR=$PWD 8*febc5adfSXianjun JiaoOPENWIFI_DIR=$1 9*febc5adfSXianjun JiaoXILINX_DIR=$2 10*febc5adfSXianjun JiaoARCH_OPTION=$3 112ee67178SXianjun Jiao 12*febc5adfSXianjun Jiaoset -x 13*febc5adfSXianjun Jiao 14*febc5adfSXianjun Jiaoif [ -f "$OPENWIFI_DIR/LICENSE" ]; then 15*febc5adfSXianjun Jiao echo "\$OPENWIFI_DIR is found!" 16*febc5adfSXianjun Jiaoelse 17*febc5adfSXianjun Jiao echo "\$OPENWIFI_DIR is not correct. Please check!" 18*febc5adfSXianjun Jiao exit 1 19*febc5adfSXianjun Jiaofi 20*febc5adfSXianjun Jiao 21*febc5adfSXianjun Jiaoif [ -d "$XILINX_DIR/SDK" ]; then 22*febc5adfSXianjun Jiao echo "\$XILINX_DIR is found!" 23*febc5adfSXianjun Jiaoelse 24*febc5adfSXianjun Jiao echo "\$XILINX_DIR is not correct. Please check!" 25*febc5adfSXianjun Jiao exit 1 26*febc5adfSXianjun Jiaofi 27*febc5adfSXianjun Jiao 28*febc5adfSXianjun Jiaoif [ "$ARCH_OPTION" != "32" ] && [ "$ARCH_OPTION" != "64" ]; then 29*febc5adfSXianjun Jiao echo "\$ARCH_OPTION is not correct. Should be 32 or 64. Please check!" 30*febc5adfSXianjun Jiao exit 1 31*febc5adfSXianjun Jiaoelse 32*febc5adfSXianjun Jiao echo "\$ARCH_OPTION is valid!" 33*febc5adfSXianjun Jiaofi 34*febc5adfSXianjun Jiao 35*febc5adfSXianjun Jiaosource $XILINX_DIR/SDK/2018.3/settings64.sh 36*febc5adfSXianjun Jiaoif [ "$ARCH_OPTION" == "64" ]; then 37*febc5adfSXianjun Jiao KDIR=$OPENWIFI_DIR/adi-linux-64/ 38*febc5adfSXianjun Jiao export ARCH=arm64 39*febc5adfSXianjun Jiao export CROSS_COMPILE=aarch64-linux-gnu- 40*febc5adfSXianjun Jiaoelse 41*febc5adfSXianjun Jiao KDIR=$OPENWIFI_DIR/adi-linux/ 422ee67178SXianjun Jiao export ARCH=arm 432ee67178SXianjun Jiao export CROSS_COMPILE=arm-linux-gnueabihf- 44*febc5adfSXianjun Jiaofi 452ee67178SXianjun Jiao 46*febc5adfSXianjun JiaoSUBMODULE=xilinx_dma 47*febc5adfSXianjun Jiao 48*febc5adfSXianjun Jiaocp $KDIR/drivers/dma/xilinx/xilinx_dma.c $KDIR/drivers/dma/xilinx/xilinx_dma.c.bak 492ee67178SXianjun Jiaocp xilinx_dma.c $KDIR/drivers/dma/xilinx -rf 502ee67178SXianjun Jiaocd $KDIR 512ee67178SXianjun Jiaomake $KDIR/drivers/dma/xilinx/$SUBMODULE.ko 522ee67178SXianjun Jiaocp $KDIR/drivers/dma/xilinx/$SUBMODULE.ko $WORKDIR -rf 53*febc5adfSXianjun Jiao# cp $KDIR/drivers/dma/xilinx/xilinx_dma.c.bak $KDIR/drivers/dma/xilinx/xilinx_dma.c 542ee67178SXianjun Jiaocd $WORKDIR 552ee67178SXianjun Jiaols $SUBMODULE.ko 56