xref: /openwifi/user_space/wgd.sh (revision 3656fa92e697f1133a070d14fe1c18d8fdff21c4)
1#!/bin/bash
2
3# Author: Xianjun Jiao
4# SPDX-FileCopyrightText: 2019 UGent
5# SPDX-License-Identifier: AGPL-3.0-or-later
6
7checkModule () {
8  MODULE="$1"
9  if lsmod | grep "$MODULE" &> /dev/null ; then
10    echo "$MODULE is loaded!"
11    return 0
12  else
13    echo "$MODULE is not loaded!"
14    return 1
15  fi
16}
17
18num_arg=$#
19echo "num_arg " $num_arg
20
21for input_var in "$@"
22do
23    last_input=$input_var
24#    echo $last_input
25done
26
27if [ -z $last_input ]
28then
29	last_input="xxxxxxxxx"
30  test_mode=0
31else
32  if [ $1 -eq 1 ]
33  then
34    test_mode=1
35  else
36    test_mode=0
37  fi
38fi
39echo last_input $last_input
40echo test_mode $test_mode
41
42modprobe mac80211
43
44# dmesg -c
45
46PROG=sdr
47rmmod $PROG
48
49# before drive ad9361, let's bring up duc and make sure dac is connected to ad9361 dma
50SUBMODULE=tx_intf
51if [ $last_input == "remote" ]
52  then
53    rm $SUBMODULE.ko
54    sync
55    wget ftp://192.168.10.1/driver/$SUBMODULE/$SUBMODULE.ko
56    sync
57fi
58rmmod $SUBMODULE
59insmod $SUBMODULE.ko
60
61echo check $SUBMODULE module is loaded or not
62checkModule $SUBMODULE
63if [ $? -eq 1 ]
64then
65  return
66fi
67sleep 0.5
68
69# SUBMODULE=ad9361_drv
70# if [ $last_input == "remote" ]
71#   then
72#     rm $SUBMODULE.ko
73#     sync
74#     wget ftp://192.168.10.1/driver/ad9361/$SUBMODULE.ko
75#     sync
76# fi
77# rmmod $SUBMODULE
78# insmod $SUBMODULE.ko
79
80# echo check $SUBMODULE module is loaded or not
81# checkModule $SUBMODULE
82# if [ $? -eq 1 ]
83# then
84#   return
85# fi
86# sleep 1
87
88echo "set RF frontend"
89# if [ $last_input == "remote" ]
90#   then
91#     rm rf_init.sh
92#     sync
93#     wget ftp://192.168.10.1/user_space/rf_init.sh
94#     sync
95#     chmod +x rf_init.sh
96#     sync
97# fi
98./rf_init.sh
99
100#sleep 1
101
102SUBMODULE=rx_intf
103if [ $last_input == "remote" ]
104  then
105    rm $SUBMODULE.ko
106    sync
107    wget ftp://192.168.10.1/driver/$SUBMODULE/$SUBMODULE.ko
108    sync
109fi
110rmmod $SUBMODULE
111insmod $SUBMODULE.ko
112
113echo check $SUBMODULE module is loaded or not
114checkModule $SUBMODULE
115if [ $? -eq 1 ]
116then
117  return
118fi
119
120SUBMODULE=openofdm_tx
121if [ $last_input == "remote" ]
122  then
123    rm $SUBMODULE.ko
124    sync
125    wget ftp://192.168.10.1/driver/$SUBMODULE/$SUBMODULE.ko
126    sync
127fi
128rmmod $SUBMODULE
129insmod $SUBMODULE.ko
130
131echo check $SUBMODULE module is loaded or not
132checkModule $SUBMODULE
133if [ $? -eq 1 ]
134then
135  return
136fi
137
138SUBMODULE=openofdm_rx
139if [ $last_input == "remote" ]
140  then
141    rm $SUBMODULE.ko
142    sync
143    wget ftp://192.168.10.1/driver/$SUBMODULE/$SUBMODULE.ko
144    sync
145fi
146rmmod $SUBMODULE
147insmod $SUBMODULE.ko
148
149echo check $SUBMODULE module is loaded or not
150checkModule $SUBMODULE
151if [ $? -eq 1 ]
152then
153  return
154fi
155
156SUBMODULE=xpu
157if [ $last_input == "remote" ]
158  then
159    rm $SUBMODULE.ko
160    sync
161    wget ftp://192.168.10.1/driver/$SUBMODULE/$SUBMODULE.ko
162    sync
163fi
164rmmod $SUBMODULE
165insmod $SUBMODULE.ko
166
167echo check $SUBMODULE module is loaded or not
168checkModule $SUBMODULE
169if [ $? -eq 1 ]
170then
171  return
172fi
173sleep 0.5
174
175PROG=sdr
176if [ $last_input == "remote" ]
177  then
178    rm $PROG.ko
179    sync
180    wget ftp://192.168.10.1/driver/$PROG.ko
181    sync
182fi
183
184rmmod $PROG
185echo insert $PROG.ko test_mode=$test_mode
186insmod $PROG.ko test_mode=$test_mode
187
188echo check $PROG module is loaded or not
189checkModule $PROG
190if [ $? -eq 1 ]
191then
192  return
193fi
194
195echo the end
196dmesg
197
198# dmesg -c
199# sleep 0.1
200# ifconfig sdr0 up
201