1b72abc17SXianjun Jiao#!/bin/bash 25a69caf8SXianjun Jiao 35a69caf8SXianjun Jiao# Author: Xianjun Jiao 45a69caf8SXianjun Jiao# SPDX-FileCopyrightText: 2023 UGent 55a69caf8SXianjun Jiao# SPDX-License-Identifier: AGPL-3.0-or-later 65a69caf8SXianjun Jiao 75a69caf8SXianjun Jiaoset -ex 85a69caf8SXianjun Jiao 95a69caf8SXianjun Jiaocd /root/ 105a69caf8SXianjun Jiao 115a69caf8SXianjun JiaoMACHINE_TYPE=`uname -m` 125a69caf8SXianjun Jiao 135a69caf8SXianjun Jiaorm -rf kernel_modules 145a69caf8SXianjun Jiaomkdir -p kernel_modules 155a69caf8SXianjun Jiao 165a69caf8SXianjun Jiao# mkdir -p /lib/modules/$(uname -r) 175a69caf8SXianjun Jiao# rm -rf /lib/modules/$(uname -r) 185a69caf8SXianjun Jiaoif [ ${MACHINE_TYPE} == 'aarch64' ]; then 19b72abc17SXianjun Jiao cp /root/kernel_modules64/* /root/kernel_modules/ 20b72abc17SXianjun Jiao cp /root/openwifi64/* /root/openwifi/ 215a69caf8SXianjun Jiao # cp ./kernel_modules64/* /lib/modules/$(uname -r)/ 225a69caf8SXianjun Jiaoelse 23b72abc17SXianjun Jiao cp /root/kernel_modules32/* /root/kernel_modules/ 24b72abc17SXianjun Jiao cp /root/openwifi32/* /root/openwifi/ 255a69caf8SXianjun Jiao # cp ./kernel_modules32/* /lib/modules/$(uname -r)/ 265a69caf8SXianjun Jiaofi 275a69caf8SXianjun Jiao 28*c288129eSXianjun Jiao# Decide board name 29*c288129eSXianjun JiaoDEVICE_TREE_MODEL_STRING=$(cat /proc/device-tree/model) 30*c288129eSXianjun Jiaoif [[ $DEVICE_TREE_MODEL_STRING == *"ADRV9361-Z7035"* ]]; then 31*c288129eSXianjun Jiao BOARD_NAME=adrv9361z7035 32*c288129eSXianjun Jiaoelif [[ $DEVICE_TREE_MODEL_STRING == *"ADRV9364-Z7020"* ]]; then 33*c288129eSXianjun Jiao BOARD_NAME=adrv9364z7020 34*c288129eSXianjun Jiaoelif [[ $DEVICE_TREE_MODEL_STRING == *"ANTSDR-E310"* ]]; then 35*c288129eSXianjun Jiao BOARD_NAME=antsdr 36*c288129eSXianjun Jiaoelif [[ $DEVICE_TREE_MODEL_STRING == *"ANTSDR-E200"* ]]; then 37*c288129eSXianjun Jiao BOARD_NAME=antsdr_e200 38*c288129eSXianjun Jiaoelif [[ $DEVICE_TREE_MODEL_STRING == *"neptunesdr"* ]]; then 39*c288129eSXianjun Jiao BOARD_NAME=neptunesdr 40*c288129eSXianjun Jiaoelif [[ $DEVICE_TREE_MODEL_STRING == *"sdrpi"* ]]; then 41*c288129eSXianjun Jiao BOARD_NAME=sdrpi 42*c288129eSXianjun Jiaoelif [[ $DEVICE_TREE_MODEL_STRING == *"ZC702"* ]]; then 43*c288129eSXianjun Jiao BOARD_NAME=zc702_fmcs2 44*c288129eSXianjun Jiaoelif [[ $DEVICE_TREE_MODEL_STRING == *"ZC706"* ]]; then 45*c288129eSXianjun Jiao BOARD_NAME=zc706_fmcs2 46*c288129eSXianjun Jiaoelif [[ $DEVICE_TREE_MODEL_STRING == *"ZCU102"* ]]; then 47*c288129eSXianjun Jiao BOARD_NAME=zcu102_fmcs2 48*c288129eSXianjun Jiaoelif [[ $DEVICE_TREE_MODEL_STRING == *"ZED"* ]]; then 49*c288129eSXianjun Jiao BOARD_NAME=zed_fmcs2 50*c288129eSXianjun Jiaoelse 51*c288129eSXianjun Jiao echo $DEVICE_TREE_MODEL_STRING " NOT recognized!" 52*c288129eSXianjun Jiao exit 1 53*c288129eSXianjun Jiaofi 54*c288129eSXianjun Jiao 55b72abc17SXianjun Jiaomv /root/kernel_modules/ad9361_drv.ko /root/openwifi/ -f || true 56b72abc17SXianjun Jiaomv /root/kernel_modules/adi_axi_hdmi.ko /root/openwifi/ -f || true 57b72abc17SXianjun Jiaomv /root/kernel_modules/axidmatest.ko /root/openwifi/ -f || true 58b72abc17SXianjun Jiaomv /root/kernel_modules/lcd.ko /root/openwifi/ -f || true 59b72abc17SXianjun Jiaomv /root/kernel_modules/xilinx_dma.ko /root/openwifi/ -f || true 60b72abc17SXianjun Jiao 615a69caf8SXianjun Jiaorm -rf /lib/modules/$(uname -r) 625a69caf8SXianjun Jiaoln -s /root/kernel_modules /lib/modules/$(uname -r) 635a69caf8SXianjun Jiaosync 645a69caf8SXianjun Jiaodepmod 655a69caf8SXianjun Jiao 66*c288129eSXianjun Jiaoecho $BOARD_NAME 67*c288129eSXianjun Jiaocp /root/openwifi_BOOT/$BOARD_NAME/system_top.bit.bin /root/openwifi/ -f || true 68*c288129eSXianjun Jiao 69b72abc17SXianjun Jiaocd /root/openwifi/sdrctl_src 705a69caf8SXianjun Jiaomake clean 715a69caf8SXianjun Jiaomake 72b72abc17SXianjun Jiaocp sdrctl /root/openwifi/ 73b72abc17SXianjun Jiaocd /root/openwifi/side_ch_ctl_src/ 745a69caf8SXianjun Jiaogcc -o side_ch_ctl side_ch_ctl.c 75b72abc17SXianjun Jiaocp side_ch_ctl /root/openwifi/ 76b72abc17SXianjun Jiaocd /root/openwifi/inject_80211/ 775a69caf8SXianjun Jiaomake clean 785a69caf8SXianjun Jiaomake 795a69caf8SXianjun Jiaocd .. 805a69caf8SXianjun Jiaosync 815a69caf8SXianjun Jiao 825a69caf8SXianjun Jiao# reboot now 83