1#!/bin/bash 2if [ "$#" -ne 3 ]; then 3 echo "You must enter exactly 3 arguments: \$OPENWIFI_DIR \$XILINX_DIR ARCH_BIT(32 or 64)" 4 exit 1 5fi 6 7OPENWIFI_DIR=$1 8XILINX_DIR=$2 9ARCH_OPTION=$3 10 11if [ -f "$OPENWIFI_DIR/LICENSE" ]; then 12 echo "\$OPENWIFI_DIR is found!" 13else 14 echo "\$OPENWIFI_DIR is not correct. Please check!" 15 exit 1 16fi 17 18if [ -d "$XILINX_DIR/SDK" ]; then 19 echo "\$XILINX_DIR is found!" 20else 21 echo "\$XILINX_DIR is not correct. Please check!" 22 exit 1 23fi 24 25if [ "$ARCH_OPTION" != "32" ] && [ "$ARCH_OPTION" != "64" ]; then 26 echo "\$ARCH_OPTION is not correct. Should be 32 or 64. Please check!" 27 exit 1 28else 29 echo "\$ARCH_OPTION is valid!" 30fi 31 32source $XILINX_DIR/SDK/2018.3/settings64.sh 33if [ "$ARCH_OPTION" == "64" ]; then 34 LINUX_KERNEL_SRC_DIR=$OPENWIFI_DIR/adi-linux-64/ 35 ARCH="arm64" 36 CROSS_COMPILE="aarch64-linux-gnu-" 37else 38 LINUX_KERNEL_SRC_DIR=$OPENWIFI_DIR/adi-linux/ 39 ARCH="arm" 40 CROSS_COMPILE="arm-linux-gnueabihf-" 41fi 42 43# check if user entered the right path to analog device linux 44if [ -d "$LINUX_KERNEL_SRC_DIR" ]; then 45 echo " setup linux kernel path ${LINUX_KERNEL_SRC_DIR}" 46else 47 echo "Error: path to adi linux: ${LINUX_KERNEL_SRC_DIR} not found. Can not continue." 48 exit 1 49fi 50 51set -x 52 53home_dir=$(pwd) 54 55cd $OPENWIFI_DIR/driver/ 56make KDIR=$LINUX_KERNEL_SRC_DIR ARCH=$ARCH CROSS_COMPILE=$CROSS_COMPILE 57cd $OPENWIFI_DIR/driver/openofdm_tx 58make KDIR=$LINUX_KERNEL_SRC_DIR ARCH=$ARCH CROSS_COMPILE=$CROSS_COMPILE 59cd $OPENWIFI_DIR/driver/openofdm_rx 60make KDIR=$LINUX_KERNEL_SRC_DIR ARCH=$ARCH CROSS_COMPILE=$CROSS_COMPILE 61cd $OPENWIFI_DIR/driver/tx_intf 62make KDIR=$LINUX_KERNEL_SRC_DIR ARCH=$ARCH CROSS_COMPILE=$CROSS_COMPILE 63cd $OPENWIFI_DIR/driver/rx_intf 64make KDIR=$LINUX_KERNEL_SRC_DIR ARCH=$ARCH CROSS_COMPILE=$CROSS_COMPILE 65cd $OPENWIFI_DIR/driver/xpu 66make KDIR=$LINUX_KERNEL_SRC_DIR ARCH=$ARCH CROSS_COMPILE=$CROSS_COMPILE 67cd $OPENWIFI_DIR/driver/ad9361 68make KDIR=$LINUX_KERNEL_SRC_DIR ARCH=$ARCH CROSS_COMPILE=$CROSS_COMPILE 69cd $OPENWIFI_DIR/driver/xilinx_dma 70./make_xilinx_dma.sh $OPENWIFI_DIR $XILINX_DIR $ARCH_OPTION 71 72cd $home_dir 73