summaryrefslogtreecommitdiff
path: root/rs9113/rs9113-1.4.3/rs9113_load_modules.sh
blob: 4f293dd4d4f03f032d5af711565b30a600631569 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
#!/bin/bash
defaults=/etc/default/rs9113
usage()
{
	echo "Configuration values:"
	echo "	COEX_MODE"
	echo "	RSI_ANTENNA_DIVERSITY"
	echo "	ANT_SEL_VAL"
	echo "	SET_COUNTRY_CODE"
	echo "	WLAN_RF_PWR_MODE"
	echo "	BT_RF_PWR_MODE"
	echo "	COEX_MODE"
	echo "	BT_RF_TX_POWER_MODE"
	echo "	BT_RF_RX_POWER_MODE"
	echo "Usage: $(basename $0) [config file]"
	echo ""
	echo "Config file is typically
		/etc/default/rs9113 with the above parameters."
	exit 1
}
if (($# > 1)); then
  usage
fi

if ((${#COEX_MODE}==0)) && [[ -r $defaults ]]; then
  set -e
  . $defaults
  set +e
fi

if (($# > 0)) && [[ -r $1 ]]; then
  set -e
  . $1
  set +e
fi
  
err=0
for x in COEX_MODE RSI_ANTENNA_DIVERSITY ANT_SEL_VAL SET_COUNTRY_CODE	WLAN_RF_PWR_MODE \
	  BT_RF_PWR_MODE COEX_MODE BT_RF_TX_POWER_MODE BT_RF_RX_POWER_MODE ; do
  eval var=\$$x
  if ((${#var} < 1)) ; then
    echo Need to provide ${x} for configuration
    err=1
  fi
done
if((err)) ; then
  usage
fi
cd /opt/rs9113

modprobe mac80211
modprobe bluetooth

insmod onebox_common_gpl.ko

insmod wlan.ko
insmod wlan_wep.ko
insmod wlan_tkip.ko
insmod wlan_ccmp.ko
insmod wlan_acl.ko
insmod wlan_xauth.ko
insmod wlan_scan_sta.ko
insmod onebox_wlan_nongpl.ko
insmod onebox_wlan_gpl.ko

#BT Power_mode type
# 0 - HIGH  POWER MODE
# 1 - MEDIUM POWER MODE 
# 2 - LOW POWER MODE

PARAMS=$PARAMS" bt_rf_tx_power_mode=$BT_RF_TX_POWER_MODE"
PARAMS=$PARAMS" bt_rf_rx_power_mode=$BT_RF_RX_POWER_MODE"

insmod onebox_bt_nongpl.ko $PARAMS 
insmod onebox_bt_gpl.ko

#Driver Mode 1 END-TO-END mode, 
#            2 RF Evaluation Mode

DRIVER_MODE=1

# COEX MODE:                  
#							1    WLAN STATION /WIFI-Direct/WLAN PER
#							2    WLAN ACCESS POINT(including muliple APs on different vaps)
#							3    WLAN ACCESS POINT + STATION MODE(on multiple vaps)

#							4    BT CLASSIC MODE/BT CLASSIC PER MODE
#							5    WLAN STATION + BT CLASSIC MODE
#							6    WLAN ACCESS POINT + BT CLASSIC MODE
#							8    BT LE MODE /BT LE PER MODE
#							9    WLAN STATION + BT LE MODE
#							12   BT CLASSIC + BT LE MODE 							
#							14   WLAN ACCESS POINT + BT CLASSIC MODE+ BT LE MODE

#							16   ZIGBEE MODE/ ZIGBEE PER MODE
#							17   WLAN STATION + ZIGBEE

#COEX_MODE=3

#To enable TA-level SDIO aggregation set 1 else set 0 to disable it.
TA_AGGR=4

#Disable Firmware load set 1 to skip FW loading through Driver else set to 0.
SKIP_FW_LOAD=0

#FW Download Mode	
#	1 - Full Flash mode with Secondary Boot Loader
#	2 - Full RAM mode with Secondary Boot Loader
#	3 - Flash + RAM mode with Secondary Boot Loader
#	4 - Firmware loading WITHOUT Secondary Boot Loader
# Recommended to use the default mode 1
FW_LOAD_MODE=1

#ps_handshake_mode
#   1 - No hand shake Mode
#	2 - Packet hand shake Mode
#	3 - GPIO Hand shake Mode
###########Default is Packet handshake mode=2
HANDSHAKE_MODE=2

#SDIO Clock speed
SDIO_CLOCK_SPEED=50000

#Antenna diversity enable
#RSI_ANTENNA_DIVERSITY=0

#Antenna Selection
#ANT_SEL_VAL=2         # 2 Internal Antenna Selection
											# 3 External Antenna Selection

####RF_POWER_MODE Selection

# 0x00 For Both TX and RX High Power 
# 0x11 For Both TX and RX Medium Power
# 0x22 For Both TX and RX LOW Power

# 0x10 For High Power TX and Medium RX Power
# 0x20 For High Power TX and LOW RX Power

# 0x01 For Medium TX and RX High Power
# 0x21 For Medium Power TX and LOW RX Power

# 0x02 For Low Power TX and RX High Power 
# 0x12 For LOW Power TX and Medium RX Power


#WLAN_RF_PWR_MODE=0x00
#BT_RF_PWR_MODE=0x00
#ZIGB_RF_PWR_MODE=0x00

#COUNTRY Selection
# 0 World Domain
# 840 US Domain Maps to US Region
# 276 Germany Maps to EU Region
# 392 Japan Maps to Japan Region
#SET_COUNTRY_CODE=0

PARAMS=" driver_mode=$DRIVER_MODE"
PARAMS=$PARAMS" firmware_path=/opt/rs9113/firmware/"
PARAMS=$PARAMS" onebox_zone_enabled=0x1"
PARAMS=$PARAMS" ta_aggr=$TA_AGGR"
PARAMS=$PARAMS" skip_fw_load=$SKIP_FW_LOAD"
PARAMS=$PARAMS" fw_load_mode=$FW_LOAD_MODE"
PARAMS=$PARAMS" sdio_clock=$SDIO_CLOCK_SPEED"
PARAMS=$PARAMS" enable_antenna_diversity=$RSI_ANTENNA_DIVERSITY"
PARAMS=$PARAMS" coex_mode=$COEX_MODE"
#PARAMS=$PARAMS" ps_handshake_mode=$HANDSHAKE_MODE"
PARAMS=$PARAMS" obm_ant_sel_val=$ANT_SEL_VAL"
PARAMS=$PARAMS" wlan_rf_power_mode=$WLAN_RF_PWR_MODE"
PARAMS=$PARAMS" bt_rf_power_mode=$BT_RF_PWR_MODE"
# PARAMS=$PARAMS" zigb_rf_power_mode=$ZIGB_RF_PWR_MODE"
PARAMS=$PARAMS" country_code=$SET_COUNTRY_CODE"

if ! insmod onebox_nongpl.ko	$PARAMS ; then
	echo onebox_nongpl.ko $PARAMS 
fi
insmod onebox_gpl.ko