openwrtv4/target/linux/ramips/base-files/etc/board.d/02_network
Valentín Kivachuk 30a7ab8f61 ramips: add support for MTC Wireless Router WR1201
MTC Wireless Router WR1201 is the OEM name of the board. It is also sold
rebranded as STRONG Dual Band Gigabit Router 1200.

Specification:
- SoC: MediaTek MT7621A (880 MHz)
- Flash: 16 MiB
- RAM: 128 MiB
- Wireless: 2.4Ghz(MT7602EN) and 5Ghz (MT7612EN)
- Ethernet speed: 10/100/1000
- Ethernet ports: 4+1
- 1x USB 3.0
- 1x microSD reader
- Serial baud rate of Bootloader and factory firmware: 57600

The OEM webinterface writes only as much bytes as listed in the
uImage header field to the flash. Also, the OEM webinterface
evaluates the name field of uImage header before flashing (the
string "WR1201_8_128")

To flash via webinterface, is mandatory to use first initramfs.bin
and after (from the OpenWrt) the sysupgrade.bin

Some notes:
- Some microSD will not work:

  mtk-sd 1e130000.sdhci: no support for card's volts
  mmc0: error -22 whilst initialising SDIO card
  mtk-sd 1e130000.sdhci: no support for card's volts
  mmc0: error -22 whilst initialising MMC card
  mtk-sd 1e130000.sdhci: no support for card's volts
  mmc0: error -22 whilst initialising SDIO card
  mtk-sd 1e130000.sdhci: card claims to support voltages below defined range
  mtk-sd 1e130000.sdhci: no support for card's volts
  mmc0: error -22 whilst initialising MMC card
  mtk-sd 1e130000.sdhci: no support for card's volts
  mmc0: error -22 whilst initialising SDIO card
  mtk-sd 1e130000.sdhci: no support for card's volts
  mmc0: error -22 whilst initialising MMC card

Signed-off-by: Valentín Kivachuk <vk18496@gmail.com>
2018-11-30 00:20:28 +01:00

625 lines
12 KiB
Bash
Executable file

#!/bin/sh
. /lib/functions.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|\
d-team,newifi-d2|\
w2914nsv2|\
zbt-we2026)
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-4M|\
all0256n-8M|\
all5002|\
all5003|\
bocco|\
broadway|\
dcs-930|\
dcs-930l-b1|\
ht-tm02|\
kimax,u35wf|\
linkits7688 | \
m2m|\
microwrt|\
mikrotik,rbm11g|\
mpr-a2|\
ncs601w|\
omega2 | \
omega2p | \
timecloud|\
tplink,tl-wa801nd-v5|\
w150m|\
widora,neo-16m|\
widora,neo-32m|\
wnce2001|\
zbt-cpe102|\
zorlik,zl5900v2|\
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|\
ai-br100|\
alfa-network,ac1200rm|\
mediatek,ap-mt7621a-v60|\
d240|\
db-wrt01|\
dir-300-b7|\
dir-320-b1|\
dir-610-a1|\
dir-615-h1|\
dir-810l|\
dlink,dwr-116-a1|\
dlink,dwr-921-c1|\
ew1200|\
firewrt|\
hc5661a|\
hc5962|\
hlk-rm04|\
k2p|\
kn|\
kn_rc|\
mac1200rv2|\
miwifi-mini|\
miwifi-nano|\
mt7621|\
mt7628|\
mtc,wr1201|\
mzk-750dhp|\
mzk-w300nh2|\
netgear,r6120|\
nixcore-x1-8M|\
nixcore-x1-16M|\
oy-0001|\
pbr-m1|\
psg1208|\
psg1218a|\
r6220|\
rt-n12p|\
sap-g3200u3|\
sk-wb8|\
unielec,u7621-06-256m-16m|\
unielec,u7621-06-512m-64m|\
vr500|\
wavlink,wl-wn570ha1|\
wf-2881|\
whr-g300n|\
mqmaker,witi-256m|\
mqmaker,witi-512m|\
wl-wn575a3|\
wndr3700v5|\
youku-yk1|\
zbt-ape522ii|\
zbt-we1326|\
zbtlink,zbt-we3526|\
zbt-we826-16M|\
zbt-we826-32M|\
zbt-wg2626|\
zbt-wg3526-16M|\
zbt-wg3526-32M|\
zbt-wr8305rt)
ucidef_add_switch "switch0" \
"0:lan" "1:lan" "2:lan" "3:lan" "4:wan" "6@eth0"
;;
alfa-network,awusfree1|\
cs-qr10|\
d105|\
dlink,dap-1522-a1|\
dch-m225|\
ex2700|\
ex3700|\
hpm|\
mzk-ex300np|\
mzk-ex750np|\
na930|\
pbr-d1|\
ravpower,wd03|\
tama,w06|\
tplink,tl-mr3020-v3|\
u25awf-h1|\
wli-tx4-ag300n|\
wmdr-143n|\
wmr-300|\
wn3000rpv3|\
wrh-300cr)
ucidef_set_interface_lan "eth0"
;;
dlink,dwr-118-a2)
ucidef_add_switch "switch0" \
"1:lan:2" "2:lan:1" "3:lan:3" "4:lan" "0:wan" "6@eth0"
;;
mir3g)
ucidef_add_switch "switch0" \
"2:lan:2" "3:lan:1" "1:wan" "6t@eth0"
;;
psg1218b)
ucidef_add_switch "switch0" \
"0:lan:3" "1:lan:2" "2:lan:1" "3: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-ac51u)
ucidef_add_switch "switch0" \
"0:wan" "1:lan" "2:lan" "3:lan" "4:lan" "6t@eth0"
;;
rt-n15|\
wl-351)
ucidef_add_switch "switch0" \
"0:lan" "1:lan" "2:lan" "3:lan" "4:wan" "5@eth0"
;;
asl26555-8M|\
asl26555-16M|\
rp-n53)
ucidef_add_switch "switch0" \
"1:lan" "2:lan" "3:lan" "4:lan" "6t@eth0"
;;
atp-52b|\
awm002-evb-4M|\
awm002-evb-8M|\
bdcom,wap2100-sk|\
c20i|\
dir-645|\
gl-mt300a|\
gl-mt300n|\
gl-mt750|\
hiwifi,hc5861b|\
jhr-n805r|\
jhr-n825r|\
jhr-n926r|\
mikrotik,rbm33g|\
mzk-wdpr|\
rb750gr3|\
rt-n14u|\
skylab,skw92a|\
tplink,c20-v4|\
tplink,c50-v3|\
tplink,tl-mr3420-v5|\
tplink,tl-wr842n-v5|\
tl-wr840n-v4|\
tl-wr840n-v5|\
tl-wr841n-v13|\
u7628-01-128M-16M|\
ubnt-erx|\
ubnt-erx-sfp|\
ur-326n4g|\
wrtnode|\
wrtnode2p | \
wrtnode2r | \
youhua,wr1200js|\
zbt-wa05|\
zyxel,keenetic-extra-ii)
ucidef_add_switch "switch0" \
"1:lan" "2:lan" "3:lan" "4:lan" "0:wan" "6@eth0"
;;
c50|\
tplink,c20-v1)
ucidef_add_switch "switch0" \
"1:lan:3" "2:lan:4" "3:lan:1" "4:lan:2" "0:wan" "6@eth0"
;;
dir-860l-b1|\
elecom,wrc-1167ghbk2-s|\
elecom,wrc-2533gst|\
elecom,wrc-1900gst|\
hg255d|\
iodata,wn-ax1167gr|\
iodata,wn-gx300gr)
ucidef_add_switch "switch0" \
"1:lan:4" "2:lan:3" "3:lan:2" "4:lan:1" "0:wan" "6@eth0"
;;
gnubee,gb-pc1|\
gnubee,gb-pc2)
ucidef_add_switch "switch0" \
"0:lan" "4:lan" "6@eth0"
;;
gl-mt300n-v2)
ucidef_add_switch "switch0" \
"1: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"
;;
c108|\
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"
;;
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"
;;
edimax,br-6478ac-v2|\
tplink,c2-v1)
ucidef_add_switch "switch1" \
"1:lan" "2:lan" "3:lan" "4:lan" "0: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_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-8M|\
vocore-16M)
ucidef_add_switch "switch0" \
"0:lan" "4:lan" "6t@eth0"
;;
newifi-d1)
ucidef_add_switch "switch0" \
"1:lan:2" "2:lan:1" "4:wan" "6@eth0"
;;
phicomm,k2g)
ucidef_add_switch "switch0" \
"0:lan:4" "1:lan:3" "2:lan:2" "3:lan:1" "5:wan" "6@eth0"
;;
re350-v1)
ucidef_add_switch "switch0" \
"0:lan" "6@eth0"
;;
re6500)
ucidef_add_switch "switch0" \
"0:lan:1" "1:lan:2" "2:lan:3" "3:lan:4" "6@eth0"
;;
rt-n56u)
ucidef_add_switch "switch0" \
"0:lan" "1:lan" "2:lan" "3:lan" "4:wan" "8@eth0"
;;
tew-638apb-v2)
ucidef_add_switch "switch0" \
"4:lan" "6@eth0"
;;
lava,lr-25g001|\
tew-691gr|\
tew-692gr|\
wlr-6000)
ucidef_add_switch "switch0" \
"1:lan" "2:lan" "3:lan" "4:lan" "5:wan" "0@eth0"
;;
tplink,tl-wr902ac-v3)
ucidef_add_switch "switch0" \
"4:lan" "6@eth0"
;;
vonets,var11n-300|\
wt1520-4M|\
wt1520-8M)
ucidef_add_switch "switch0" \
"0:lan" "4:wan" "6@eth0"
;;
vocore2|\
vocore2lite)
ucidef_add_switch "switch0" \
"0:lan" "2:lan" "6t@eth0"
;;
f5d8235-v1|\
f5d8235-v2|\
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|\
we1026-5g-16m)
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" \
"0:lan" "1:lan" "2:wan" "6@eth0"
;;
wt3020-4M|\
wt3020-8M)
ucidef_add_switch "switch0" \
"4:lan" "0:wan" "6@eth0"
;;
zbtlink,zbt-we1226|\
y1)
ucidef_add_switch "switch0" \
"0:lan:2" "1:lan:1" "4: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|\
wmdr-143n)
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)
;;
dlink,dwr-116-a1|\
dlink,dwr-118-a2|\
dlink,dwr-921-c1|\
lava,lr-25g001)
wan_mac=$(jboot_config_read -m -i $(find_mtd_part "config") -o 0xE000)
lan_mac=$(macaddr_add "$wan_mac" 1)
;;
e1700)
wan_mac=$(mtd_get_mac_ascii config WAN_MAC_ADDR)
;;
edimax,br-6478ac-v2)
lan_mac=$(cat /sys/class/net/eth0/address)
wan_mac=$(macaddr_add "$lan_mac" 2)
;;
elecom,wrc-1167ghbk2-s|\
elecom,wrc-2533gst|\
elecom,wrc-1900gst|\
sk-wb8)
wan_mac=$(mtd_get_mac_binary factory 57350)
;;
gl-mt300n-v2|\
whr-g300n)
wan_mac=$(mtd_get_mac_binary factory 4)
;;
hc5*61|\
hc5661a|\
hc5962|\
hiwifi,hc5861b)
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)
;;
iodata,wn-ax1167gr|\
iodata,wn-gx300gr)
wan_mac=$(macaddr_add "$(mtd_get_mac_binary Factory 4)" 1)
;;
kn_rc|\
kn_rf|\
kng_rc)
wan_mac=$(mtd_get_mac_binary factory 40)
;;
linkits7688)
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)
;;
mir3g)
lan_mac=$(mtd_get_mac_binary Factory 0xe006)
;;
miwifi-mini)
wan_mac=$(cat /sys/class/net/eth0/address)
lan_mac=$(macaddr_setbit_la "$wan_mac")
;;
m3|\
m4-4M|\
m4-8M|\
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|\
phicomm,k2g)
lan_mac=$(mtd_get_mac_binary factory 40)
wan_mac=$(mtd_get_mac_binary factory 46)
;;
r6220)
wan_mac=$(mtd_get_mac_binary factory 4)
lan_mac=$(macaddr_add "$wan_mac" 1)
;;
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)
;;
skylab,skw92a)
lan_mac=$(mtd_get_mac_binary factory 40)
wan_mac=$(mtd_get_mac_binary factory 46)
;;
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=$(board_name)
ramips_setup_interfaces $board
ramips_setup_macs $board
board_config_flush
exit 0