openwrtv3/target/linux/ramips/base-files/etc/board.d/02_network
Kristian Evensen bb7068f26c ramips: add support for Sanlinking D240
The Sanlinking Technologies D240
(http://www.sanlinking.com/en/29-dual-4g-wifi-router.html) is basically the same
device as the ZBT WE826, so adding support for it in LEDE is straight forward.
The differences is that the D240 has two mini-PCIe slots (instead of one), blue
LEDs and supports PoE.

Specification:
* CPU: MT7620A
* 1x 10/100Mbps POE (802.3af/802.3at) Ethernet, 4x 10/100Mbps.
* 16 MB Flash.
* 128 MB RAM.
* 1x USB 2.0 port.
* 2x mini-PCIe slots.
* 2x SIM slots.
* 1x 2.4Ghz WIFI.
* 1x button.

Wifi, USB, switch and both mini-PCIe slots are working. I have not been able to
test the SD card reader.

The device comes pre-installed with an older version of OpenWRT, including Luci.
In order to install LEDE, you need to follow the existing procedure for updating
OpenWRT/LEDE using Luci. I.e., you need to access the UI and update the firmware
using the sysupgrade-image. Remember to select that you do not want to keep
existing settings. The default router address is 192.168.10.1 and
username/password admin/root (at least on my devices).

If you brick the device, the procedure for recovery is the same as for the
WE826. Please see the wiki page for that device for instructions.

Signed-off-by: Kristian Evensen <kristian.evensen@gmail.com>
2017-02-05 22:23:28 +01:00

457 lines
8.6 KiB
Bash
Executable file

#!/bin/sh
. /lib/functions.sh
. /lib/ramips.sh
. /lib/functions/uci-defaults.sh
. /lib/functions/system.sh
ramips_setup_rt3x5x_vlans()
{
if [ ! -x /sbin/swconfig ]; then
# legacy default
ucidef_set_interfaces_lan_wan "eth0.1" "eth0.2"
return
fi
local wanports=""
local lanports=""
for port in 5 4 3 2 1 0; do
if [ `swconfig dev rt305x port $port get disable` = "1" ]; then
continue
fi
if [ `swconfig dev rt305x port $port get lan` = "0" ]; then
wanports="$port:wan $wanports"
else
lanports="$port:lan $lanports"
fi
done
ucidef_add_switch "rt305x" $lanports $wanports "6t@eth0"
}
ramips_setup_interfaces()
{
local board="$1"
case $board in
11acnas|\
w2914nsv2)
ucidef_add_switch "switch0" \
"0:lan:4" "1:lan:3" "2:lan:2" "3:lan:1" "4:wan:5" "6@eth0"
;;
3g150b|\
3g300m|\
a5-v11|\
all0256n|\
all5002|\
all5003|\
broadway|\
dcs-930|\
dcs-930l-b1|\
ht-tm02|\
linkits7688 | \
linkits7688d | \
m2m|\
microwrt|\
mpr-a2|\
ncs601w|\
omega2 | \
omega2p | \
timecloud|\
w150m|\
widora-neo|\
wn3000rpv3|\
wnce2001|\
zbt-cpe102|\
zte-q7)
ucidef_add_switch "switch0"
ucidef_add_switch_attr "switch0" "enable" "false"
ucidef_set_interface_lan "eth0"
;;
mlw221|\
mr-102n)
ucidef_set_interface_lan "eth0.2"
;;
3g-6200n|\
ac1200pro|\
ai-br100|\
d240|\
db-wrt01|\
dir-300-b7|\
dir-320-b1|\
dir-610-a1|\
dir-615-h1|\
firewrt|\
hlk-rm04|\
mac1200rv2|\
miwifi-mini|\
miwifi-nano|\
mt7621|\
mt7628|\
mzk-750dhp|\
mzk-w300nh2|\
nixcore|\
oy-0001|\
pbr-m1|\
psg1208|\
psg1218|\
sap-g3200u3|\
sk-wb8|\
vr500|\
wf-2881|\
witi|\
wl-wn575a3|\
wndr3700v5|\
wt1520|\
y1|\
youku-yk1|\
zbt-ape522ii|\
zbt-we826|\
zbt-wg2626|\
zbt-wg3526|\
zbt-wr8305rt)
ucidef_add_switch "switch0" \
"0:lan" "1:lan" "2:lan" "3:lan" "4:wan" "6@eth0"
;;
whr-300hp2|\
whr-600d|\
wsr-1166|\
wsr-600)
ucidef_add_switch "switch0" \
"0:lan:1" "1:lan:2" "2:lan:3" "3:lan:4" "4:wan:5" "6@eth0"
;;
ar670w|\
ar725w|\
rt-n15|\
wl-351)
ucidef_add_switch "switch0" \
"0:lan" "1:lan" "2:lan" "3:lan" "4:wan" "5@eth0"
;;
asl26555|\
re6500|\
rp-n53)
ucidef_add_switch "switch0" \
"1:lan" "2:lan" "3:lan" "4:lan" "6t@eth0"
;;
atp-52b|\
awm002-evb|\
awm003-evb|\
c20i|\
c50|\
dir-645|\
dir-860l-b1|\
f5d8235-v2|\
gl-mt300a|\
gl-mt300n|\
gl-mt750|\
hg255d|\
jhr-n805r|\
jhr-n825r|\
jhr-n926r|\
mzk-wdpr|\
rb750gr3|\
rt-n14u|\
ubnt-erx|\
ur-326n4g|\
wrtnode|\
wrtnode2p | \
wrtnode2r | \
wt3020|\
zbt-wa05)
ucidef_add_switch "switch0" \
"1:lan" "2:lan" "3:lan" "4:lan" "0:wan" "6@eth0"
;;
awapn2403)
ucidef_add_switch "switch0" \
"0:lan" "1:wan" "6@eth0"
;;
b2c|\
nw718|\
psr-680w|\
sl-r7205|\
ur-336un|\
w502u|\
wr6202)
ucidef_set_interfaces_lan_wan "eth0.1" "eth0.2"
;;
br-6475nd)
ucidef_add_switch "switch0" \
"1:lan" "2:lan" "3:lan" "4:lan" "0:wan" "9@eth0"
;;
cf-wr800n)
ucidef_add_switch "switch0" \
"4:lan" "6t@eth0"
;;
cy-swr1100)
ucidef_add_switch "switch0" \
"0:lan" "1:lan" "2:lan" "3:lan" "4:wan" "9@eth0"
;;
cs-qr10|\
d105|\
dch-m225|\
ex2700|\
hpm|\
mzk-ex300np|\
mzk-ex750np|\
na930|\
pbr-d1|\
wli-tx4-ag300n|\
wmr-300|\
wrh-300cr)
ucidef_set_interface_lan "eth0"
;;
duzun-dm06)
ucidef_add_switch "switch0" \
"1:lan" "0:wan" "6@eth0"
;;
e1700|\
mt7620a_mt7530)
ucidef_add_switch "switch1" \
"0:lan" "1:lan" "2:lan" "3:lan" "4:wan" "6@eth0"
;;
hc5*61|\
y1s)
ucidef_add_switch "switch0" \
"1:lan" "2:lan" "3:lan" "4:lan" "5:lan" "0:wan" "6@eth0"
;;
kn_rc|\
kn_rf)
ucidef_add_switch "switch0" \
"0:wan" "1:lan" "2:lan" "3:lan" "4:lan" "6@eth0"
;;
kng_rc)
ucidef_add_switch "switch1" \
"0:lan" "1:lan" "2:lan" "3:lan" "4:wan" "7t@eth0"
;;
mlwg2|\
wizard8800|\
wl-330n)
ucidef_set_interface_lan "eth0.1"
;;
mr200)
ucidef_add_switch "switch0" \
"0:lan" "1:lan" "2:lan" "3:lan" "6t@eth0"
ucidef_set_interface_wan "usb0"
;;
mzk-dp150n|\
vocore)
ucidef_add_switch "switch0" \
"0:lan" "4:lan" "6t@eth0"
;;
newifi-d1)
ucidef_set_interface_lan_wan "eth0.1" "eth0.2"
ucidef_add_switch "switch0" \
"0:lan" "1:lan" "2:lan" "3:lan" "5:wan" "6t@eth0" "7t@eth0"
ucidef_add_switch "switch1" \
"4:lan" "6t@eth0" "7t@eth0"
;;
rt-n56u)
ucidef_add_switch "switch0" \
"0:lan" "1:lan" "2:lan" "3:lan" "4:wan" "8@eth0"
;;
tew-691gr|\
tew-692gr|\
wlr-6000)
ucidef_add_switch "switch0" \
"1:lan" "2:lan" "3:lan" "4:lan" "5:wan" "0@eth0"
;;
vocore2)
ucidef_add_switch "switch0" \
"0:lan" "2:lan" "6t@eth0"
;;
f5d8235-v1|\
tew-714tru|\
v11st-fe|\
wzr-agl300nh)
ucidef_add_switch "switch0" \
"1:lan" "2:lan" "3:lan" "4:lan" "0:wan" "5@eth0"
;;
wcr-1166ds)
ucidef_add_switch "switch0" \
"3:lan" "4:wan" "6@eth0"
;;
wcr-150gn)
ucidef_add_switch "switch0" \
"0:lan" "6t@eth0"
;;
whr-1166d)
ucidef_add_switch "switch0" \
"0:lan" "1:lan" "2:lan" "3:lan" "5:wan" "6@eth0"
;;
wizfi630a)
ucidef_add_switch "switch0" \
"1:lan" "2:lan" "0:wan" "6@eth0"
;;
*)
RT3X5X=`cat /proc/cpuinfo | egrep "(RT3.5|RT5350)"`
if [ -n "${RT3X5X}" ]; then
ramips_setup_rt3x5x_vlans
else
ucidef_set_interfaces_lan_wan "eth0.1" "eth0.2"
fi
;;
esac
}
ramips_setup_macs()
{
local board="$1"
local lan_mac=""
local wan_mac=""
case $board in
a5-v11|\
ht-tm02)
lan_mac=$(cat /sys/class/net/eth0/address)
;;
all0239-3g|\
carambola|\
freestation5|\
w502u|\
wnce2001)
wan_mac=$(mtd_get_mac_binary factory 46)
;;
bc2|\
broadway|\
d105|\
dir-300-b7|\
dir-320-b1|\
dir-620-a1|\
esr-9753|\
freestation5|\
hlk-rm04|\
mpr-a1|\
psr-680w|\
sl-r7205|\
y1|\
y1s)
lan_mac=$(cat /sys/class/net/eth0/address)
lan_mac=$(macaddr_setbit_la "$lan_mac")
wan_mac=$(macaddr_add "$lan_mac" 1)
;;
br-6475nd)
lan_mac=$(cat /sys/class/net/eth0/address)
wan_mac=$(mtd_get_mac_binary devdata 7)
;;
cy-swr1100|\
dch-m225)
lan_mac=$(mtd_get_mac_ascii factory lanmac)
;;
dir-645)
lan_mac=$(mtd_get_mac_ascii nvram lanmac)
wan_mac=$(mtd_get_mac_ascii nvram wanmac)
;;
dir-860l-b1)
lan_mac=$(mtd_get_mac_ascii factory lanmac)
wan_mac=$(mtd_get_mac_ascii factory wanmac)
;;
e1700)
wan_mac=$(mtd_get_mac_ascii config WAN_MAC_ADDR)
;;
hc5*61)
lan_mac=`mtd_get_mac_ascii bdinfo "Vfac_mac "`
[ -n "$lan_mac" ] || lan_mac=$(cat /sys/class/net/eth0/address)
wan_mac=$(macaddr_add "$lan_mac" 1)
;;
kn_rc|\
kn_rf|\
kng_rc)
wan_mac=$(mtd_get_mac_binary factory 40)
;;
linkits7688 | \
linkits7688d)
wan_mac=$(mtd_get_mac_binary factory 4)
lan_mac=$(mtd_get_mac_binary factory 46)
;;
mac1200rv2)
lan_mac=$(mtd_get_mac_binary factory_info 13)
wan_mac=$(macaddr_add "$lan_mac" 1)
;;
miwifi-mini)
wan_mac=$(cat /sys/class/net/eth0/address)
lan_mac=$(macaddr_setbit_la "$wan_mac")
;;
m3|\
m4|\
x5|\
x8)
lan_mac=$(cat /sys/class/net/eth0/address)
lan_mac=$(macaddr_add "$lan_mac" -2)
;;
newifi-d1)
lan_mac=$(cat /sys/class/net/eth0/address)
lan_mac=$(macaddr_add "$lan_mac" 2)
;;
omega2|\
omega2p)
wan_mac=$(mtd_get_mac_binary factory 4)
lan_mac=$(mtd_get_mac_binary factory 46)
;;
oy-0001)
lan_mac=$(mtd_get_mac_binary factory 40)
wan_mac=$(mtd_get_mac_binary factory 46)
;;
rt-n56u)
lan_mac=$(cat /sys/class/net/eth0/address)
lan_mac=$(macaddr_setbit_la "$lan_mac")
wan_mac=$(mtd_get_mac_binary factory 32772)
;;
sk-wb8)
wan_mac=$(mtd_get_mac_binary factory 57350)
;;
tew-691gr)
wan_mac=$(macaddr_add "$(mtd_get_mac_binary factory 4)" 3)
;;
tew-692gr)
wan_mac=$(macaddr_add "$(mtd_get_mac_binary factory 4)" 1)
;;
tiny-ac)
lan_mac=$(mtd_get_mac_ascii u-boot-env LAN_MAC_ADDR)
wan_mac=$(mtd_get_mac_ascii u-boot-env WAN_MAC_ADDR)
;;
vr500)
lan_mac=$(mtd_get_mac_binary factory 57344)
wan_mac=$(mtd_get_mac_binary factory 57350)
;;
w306r-v20)
lan_mac=$(cat /sys/class/net/eth0/address)
wan_mac=$(macaddr_add "$lan_mac" 5)
;;
wcr-1166ds|\
wsr-1166)
local index="$(find_mtd_index "board_data")"
wan_mac="$(grep -m1 mac= "/dev/mtd${index}" | cut -d= -f2)"
lan_mac=$wan_mac
;;
wcr-150gn)
wan_mac=$(mtd_get_mac_binary factory 40)
;;
whr-1166d|\
whr-300hp2|\
whr-600d|\
wsr-600)
wan_mac=$(mtd_get_mac_binary factory 4)
lan_mac=$wan_mac
;;
wizfi630a)
lan_mac=$(mtd_get_mac_binary factory 4)
wan_mac=$(mtd_get_mac_binary factory 40)
;;
wlr-6000)
wan_mac=$(macaddr_add "$(mtd_get_mac_binary factory 32772)" 2)
;;
*)
lan_mac=$(cat /sys/class/net/eth0/address)
wan_mac=$(macaddr_add "$lan_mac" 1)
;;
esac
[ -n "$lan_mac" ] && ucidef_set_interface_macaddr "lan" $lan_mac
[ -n "$wan_mac" ] && ucidef_set_interface_macaddr "wan" $wan_mac
}
board_config_update
board=$(ramips_board_name)
ramips_setup_interfaces $board
ramips_setup_macs $board
board_config_flush
exit 0