1#!/bin/bash 2 3# Author: Xianjun Jiao 4# SPDX-FileCopyrightText: 2023 UGent 5# SPDX-License-Identifier: AGPL-3.0-or-later 6 7set -ex 8 9cd /root/ 10 11MACHINE_TYPE=`uname -m` 12 13rm -rf kernel_modules 14mkdir -p kernel_modules 15 16# mkdir -p /lib/modules/$(uname -r) 17# rm -rf /lib/modules/$(uname -r) 18if [ ${MACHINE_TYPE} == 'aarch64' ]; then 19 cp /root/kernel_modules64/* /root/kernel_modules/ 20 cp /root/openwifi64/* /root/openwifi/ 21 # cp ./kernel_modules64/* /lib/modules/$(uname -r)/ 22else 23 cp /root/kernel_modules32/* /root/kernel_modules/ 24 cp /root/openwifi32/* /root/openwifi/ 25 # cp ./kernel_modules32/* /lib/modules/$(uname -r)/ 26fi 27 28# Decide board name 29DEVICE_TREE_MODEL_STRING=$(cat /proc/device-tree/model) 30if [[ $DEVICE_TREE_MODEL_STRING == *"ADRV9361-Z7035"* ]]; then 31 BOARD_NAME=adrv9361z7035 32elif [[ $DEVICE_TREE_MODEL_STRING == *"ADRV9364-Z7020"* ]]; then 33 BOARD_NAME=adrv9364z7020 34elif [[ $DEVICE_TREE_MODEL_STRING == *"ANTSDR-E310V2"* ]]; then 35 BOARD_NAME=e310v2 36elif [[ $DEVICE_TREE_MODEL_STRING == *"ANTSDR-E310"* ]]; then 37 BOARD_NAME=antsdr 38elif [[ $DEVICE_TREE_MODEL_STRING == *"ANTSDR-E200"* ]]; then 39 BOARD_NAME=antsdr_e200 40elif [[ $DEVICE_TREE_MODEL_STRING == *"neptunesdr"* ]]; then 41 BOARD_NAME=neptunesdr 42elif [[ $DEVICE_TREE_MODEL_STRING == *"sdrpi"* ]]; then 43 BOARD_NAME=sdrpi 44elif [[ $DEVICE_TREE_MODEL_STRING == *"ZC702"* ]]; then 45 BOARD_NAME=zc702_fmcs2 46elif [[ $DEVICE_TREE_MODEL_STRING == *"ZC706"* ]]; then 47 BOARD_NAME=zc706_fmcs2 48elif [[ $DEVICE_TREE_MODEL_STRING == *"ZCU102"* ]]; then 49 BOARD_NAME=zcu102_fmcs2 50elif [[ $DEVICE_TREE_MODEL_STRING == *"ZED"* ]]; then 51 BOARD_NAME=zed_fmcs2 52else 53 echo $DEVICE_TREE_MODEL_STRING " NOT recognized!" 54 exit 1 55fi 56 57mv /root/kernel_modules/ad9361_drv.ko /root/openwifi/ -f || true 58mv /root/kernel_modules/adi_axi_hdmi.ko /root/openwifi/ -f || true 59mv /root/kernel_modules/axidmatest.ko /root/openwifi/ -f || true 60mv /root/kernel_modules/lcd.ko /root/openwifi/ -f || true 61mv /root/kernel_modules/xilinx_dma.ko /root/openwifi/ -f || true 62 63rm -rf /lib/modules/$(uname -r) 64ln -s /root/kernel_modules /lib/modules/$(uname -r) 65sync 66depmod 67 68echo $BOARD_NAME 69cp /root/openwifi_BOOT/$BOARD_NAME/system_top.bit.bin /root/openwifi/ -f || true 70 71cd /root/openwifi/sdrctl_src 72make clean 73make 74cp sdrctl /root/openwifi/ 75cd /root/openwifi/side_ch_ctl_src/ 76gcc -o side_ch_ctl side_ch_ctl.c 77cp side_ch_ctl /root/openwifi/ 78cd /root/openwifi/inject_80211/ 79make clean 80make 81cd .. 82sync 83 84# reboot now 85