xref: /openwifi/user_space/setup_once.sh (revision a47b55e6cafa759d041cd8d309e454edc8a51770)
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
28c288129eSXianjun Jiao# Decide board name
29c288129eSXianjun JiaoDEVICE_TREE_MODEL_STRING=$(cat /proc/device-tree/model)
30c288129eSXianjun Jiaoif [[ $DEVICE_TREE_MODEL_STRING == *"ADRV9361-Z7035"* ]]; then
31c288129eSXianjun Jiao  BOARD_NAME=adrv9361z7035
32c288129eSXianjun Jiaoelif [[ $DEVICE_TREE_MODEL_STRING == *"ADRV9364-Z7020"* ]]; then
33c288129eSXianjun Jiao  BOARD_NAME=adrv9364z7020
34*a47b55e6SJiao Xianjunelif [[ $DEVICE_TREE_MODEL_STRING == *"ANTSDR-E310V2"* ]]; then
35*a47b55e6SJiao Xianjun  BOARD_NAME=e310v2
36c288129eSXianjun Jiaoelif [[ $DEVICE_TREE_MODEL_STRING == *"ANTSDR-E310"* ]]; then
37c288129eSXianjun Jiao  BOARD_NAME=antsdr
38c288129eSXianjun Jiaoelif [[ $DEVICE_TREE_MODEL_STRING == *"ANTSDR-E200"* ]]; then
39c288129eSXianjun Jiao  BOARD_NAME=antsdr_e200
40c288129eSXianjun Jiaoelif [[ $DEVICE_TREE_MODEL_STRING == *"neptunesdr"* ]]; then
41c288129eSXianjun Jiao  BOARD_NAME=neptunesdr
42c288129eSXianjun Jiaoelif [[ $DEVICE_TREE_MODEL_STRING == *"sdrpi"* ]]; then
43c288129eSXianjun Jiao  BOARD_NAME=sdrpi
44c288129eSXianjun Jiaoelif [[ $DEVICE_TREE_MODEL_STRING == *"ZC702"* ]]; then
45c288129eSXianjun Jiao  BOARD_NAME=zc702_fmcs2
46c288129eSXianjun Jiaoelif [[ $DEVICE_TREE_MODEL_STRING == *"ZC706"* ]]; then
47c288129eSXianjun Jiao  BOARD_NAME=zc706_fmcs2
48c288129eSXianjun Jiaoelif [[ $DEVICE_TREE_MODEL_STRING == *"ZCU102"* ]]; then
49c288129eSXianjun Jiao  BOARD_NAME=zcu102_fmcs2
50c288129eSXianjun Jiaoelif [[ $DEVICE_TREE_MODEL_STRING == *"ZED"* ]]; then
51c288129eSXianjun Jiao  BOARD_NAME=zed_fmcs2
52c288129eSXianjun Jiaoelse
53c288129eSXianjun Jiao  echo $DEVICE_TREE_MODEL_STRING " NOT recognized!"
54c288129eSXianjun Jiao  exit 1
55c288129eSXianjun Jiaofi
56c288129eSXianjun Jiao
57b72abc17SXianjun Jiaomv /root/kernel_modules/ad9361_drv.ko /root/openwifi/ -f || true
58b72abc17SXianjun Jiaomv /root/kernel_modules/adi_axi_hdmi.ko /root/openwifi/ -f || true
59b72abc17SXianjun Jiaomv /root/kernel_modules/axidmatest.ko /root/openwifi/ -f || true
60b72abc17SXianjun Jiaomv /root/kernel_modules/lcd.ko /root/openwifi/ -f || true
61b72abc17SXianjun Jiaomv /root/kernel_modules/xilinx_dma.ko /root/openwifi/ -f || true
62b72abc17SXianjun Jiao
635a69caf8SXianjun Jiaorm -rf /lib/modules/$(uname -r)
645a69caf8SXianjun Jiaoln -s /root/kernel_modules /lib/modules/$(uname -r)
655a69caf8SXianjun Jiaosync
665a69caf8SXianjun Jiaodepmod
675a69caf8SXianjun Jiao
68c288129eSXianjun Jiaoecho $BOARD_NAME
69c288129eSXianjun Jiaocp /root/openwifi_BOOT/$BOARD_NAME/system_top.bit.bin /root/openwifi/ -f || true
70c288129eSXianjun Jiao
71b72abc17SXianjun Jiaocd /root/openwifi/sdrctl_src
725a69caf8SXianjun Jiaomake clean
735a69caf8SXianjun Jiaomake
74b72abc17SXianjun Jiaocp sdrctl /root/openwifi/
75b72abc17SXianjun Jiaocd /root/openwifi/side_ch_ctl_src/
765a69caf8SXianjun Jiaogcc -o side_ch_ctl side_ch_ctl.c
77b72abc17SXianjun Jiaocp side_ch_ctl /root/openwifi/
78b72abc17SXianjun Jiaocd /root/openwifi/inject_80211/
795a69caf8SXianjun Jiaomake clean
805a69caf8SXianjun Jiaomake
815a69caf8SXianjun Jiaocd ..
825a69caf8SXianjun Jiaosync
835a69caf8SXianjun Jiao
845a69caf8SXianjun Jiao# reboot now
85