difos/target/linux/ramips/base-files/etc/board.d/02_network
Nick Briggs 3df3bb0dae ramips: add support for EnGenius ESR600
The EnGenius ESR600 is a dual band wireless router with a 4-port gigabit
Ethernet switch, a gigabit Ethernet WAN port and a USB port.

Specification:

- Bootloader:	U-Boot
- SoC:		MediaTek MT7620A (600 MHz)
- Flash:	16MB, Macronix MX25L12845E
- RAM:		64MB, Nanya NT5TU32M16DG-AC
- Serial:	115200 baud, no header, 3.3V
  		J2: Vcc (arrow), Gnd, Tx, Rx
- USB:		USB 2, 5V
- Ethernet:	5 x 1 Gb/s 4 LAN 1 WAN, Atheros AR8327
- WiFi0:	5 GHz 802.11 b/g/n Ralink RT5592N
  		300 Mb/s, 2T2R
- WiFi1:	2.4 GHz 802.11 b/g/n integrated
  		300 Mb/s, 2T2R
- Antennas:	2 per radio, internal
- LEDs:		1 programmable power (amber)
  		2 programable radio (blue)
		1 programable WPS-5G (blue)
		1 non-programable WAN activity (blue)
		1 unconfigured WPS-2.4G (amber)
- Buttons:	GPIO: Reset, WPS

Installation:

Use the OEM web interface to install the ...-factory.dlf image.
Use the OpenWRT ...-sysupgrade.bin image for future upgrades.

The J2 serial port can be accessed either by soldering in a header,
standard 0.1" spacing, or by using pogo-pins against the back side.

As configured by the OEM, the U-Boot boot delay is short, however quickly
typing "1" leads to the U-Boot "System load Linux to SDRAM via TFTP"
prompt.  The TFTP client is configured by default with
     client:   192.168.99.9
     server:   192.168.99.8
     filename: uImageESR600
It will load an OpenWRT initramfs kernel with this method.

Known issues:

1) Only the ports externally labeled WAN, LAN3 and LAN4 are operational.
LAN1 and LAN2 do not appear to power up. This issue is also present
in the Lava LR25G001.

2) The amber WPS-2.4G LED, in the same lightguide as the blue WPS-5G LED,
is not configured in the Device Tree specification.

3) The blue WAN activity LED is not configured in the Device Tree
specification as this causes the AR8327 switch to fail to initialize.

Signed-off-by: Nick Briggs <nicholas.h.briggs@gmail.com>
[merge conflict in 02_network]
Signed-off-by: Petr Štetiar <ynezz@true.cz>
2019-09-20 11:36:27 +02:00

740 lines
17 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
accton,wr6202|\
alfa-network,w502u|\
netcore,nw718|\
petatel,psr-680w|\
skyline,sl-r7205|\
upvel,ur-336un)
ucidef_set_interfaces_lan_wan "eth0.1" "eth0.2"
;;
adslr,g7|\
afoundry,ew1200|\
aigale,ai-br100|\
alfa-network,ac1200rm|\
asus,rt-n12p|\
buffalo,whr-g300n|\
d-team,pbr-m1|\
dlink,dir-300-b7|\
dlink,dir-320-b1|\
dlink,dir-610-a1|\
dlink,dir-810l|\
dlink,dwr-116-a1|\
dlink,dwr-921-c1|\
dlink,dwr-922-e2|\
edimax,3g-6200n|\
firefly,firewrt|\
hilink,hlk-rm04|\
hiwifi,hc5661a|\
hiwifi,hc5761a|\
hiwifi,hc5962|\
mediatek,ap-mt7621a-v60|\
mediatek,mt7621-eval-board|\
mediatek,mt7628an-eval-board|\
mercury,mac1200r-v2|\
mqmaker,witi|\
mtc,wr1201|\
netis,wf-2881|\
nixcore,x1-16m|\
nixcore,x1-8m|\
ohyeah,oy-0001|\
phicomm,k2p|\
phicomm,psg1208|\
phicomm,psg1218a|\
planex,db-wrt01|\
planex,mzk-750dhp|\
planex,mzk-w300nh2|\
planex,vr500|\
samknows,whitebox-v8|\
sanlinking,d240|\
storylink,sap-g3200u3|\
telco-electronics,x1|\
totolink,a7000r|\
totolink,lr1200|\
unielec,u7621-06-256m-16m|\
unielec,u7621-06-512m-64m|\
wavlink,wl-wn570ha1|\
wavlink,wl-wn575a3|\
xiaomi,miwifi-mini|\
xiaomi,miwifi-nano|\
xzwifi,creativebox-v1|\
youku,yk-l2|\
youku,yk1|\
zbtlink,zbt-ape522ii|\
zbtlink,zbt-we1326|\
zbtlink,zbt-we3526|\
zbtlink,zbt-we826-16m|\
zbtlink,zbt-we826-32m|\
zbtlink,zbt-we826-e|\
zbtlink,zbt-wg2626|\
zbtlink,zbt-wg3526-16m|\
zbtlink,zbt-wg3526-32m|\
zbtlink,zbt-wr8305rt|\
zyxel,keenetic|\
zyxel,keenetic-omni)
ucidef_add_switch "switch0" \
"0:lan" "1:lan" "2:lan" "3:lan" "4:wan" "6@eth0"
;;
airlink101,ar670w|\
airlink101,ar725w|\
asus,rt-ac51u|\
rakwireless,rak633)
ucidef_add_switch "switch0" \
"0:wan" "1:lan" "2:lan" "3:lan" "4:lan" "6t@eth0"
;;
alfa-network,awusfree1|\
alfa-network,tube-e4g|\
buffalo,wli-tx4-ag300n|\
buffalo,wmr-300|\
dlink,dap-1522-a1|\
dlink,dch-m225|\
d-team,pbr-d1|\
elecom,wrh-300cr|\
huawei,d105|\
kimax,u25awf-h1|\
loewe,wmdr-143n|\
netgear,ex2700|\
netgear,ex3700|\
netgear,wn3000rp-v3|\
omnima,hpm|\
planex,cs-qr10|\
planex,mzk-ex300np|\
planex,mzk-ex750np|\
ravpower,wd03|\
sercomm,na930|\
tama,w06|\
tplink,tl-mr3020-v3|\
tplink,tl-wr802n-v4)
ucidef_set_interface_lan "eth0"
;;
allnet,all0256n-4m|\
allnet,all0256n-8m|\
allnet,all5002|\
allnet,all5003|\
dlink,dcs-930l-b1|\
dlink,dcs-930|\
edimax,ew-7476rpc|\
edimax,ew-7478ac|\
hame,mpr-a2|\
hauppauge,broadway|\
hootoo,ht-tm02|\
intenso,memory2move|\
kimax,u35wf|\
mediatek,linkit-smart-7688|\
microduino,microwrt|\
mikrotik,rbm11g|\
netgear,wnce2001|\
onion,omega2p|\
onion,omega2|\
tenda,3g150b|\
tenda,3g300m|\
tenda,w150m|\
thunder,timecloud|\
tplink,tl-wa801nd-v5|\
unbranded,a5-v11|\
wansview,ncs601w|\
widora,neo-16m|\
widora,neo-32m|\
yukai,bocco|\
zbtlink,zbt-cpe102|\
zorlik,zl5900v2|\
zte,q7)
ucidef_add_switch "switch0"
ucidef_add_switch_attr "switch0" "enable" "false"
ucidef_set_interface_lan "eth0"
;;
alphanetworks,asl26555-8m|\
alphanetworks,asl26555-16m|\
asus,rp-n53)
ucidef_add_switch "switch0" \
"1:lan" "2:lan" "3:lan" "4:lan" "6t@eth0"
;;
argus,atp-52b|\
asiarf,awm002-evb-4m|\
asiarf,awm002-evb-8m|\
asus,rt-ac57u|\
asus,rt-n14u|\
bdcom,wap2100-sk|\
dlink,dir-645|\
glinet,gl-mt300a|\
glinet,gl-mt300n|\
glinet,gl-mt750|\
hilink,hlk-7628n|\
hiwifi,hc5661|\
hiwifi,hc5861b|\
jcg,jhr-n805r|\
jcg,jhr-n825r|\
jcg,jhr-n926r|\
mikrotik,rb750gr3|\
mikrotik,rbm33g|\
planex,mzk-wdpr|\
skylab,skw92a|\
tplink,archer-c20-v4|\
tplink,archer-c20i|\
tplink,archer-c50-v3|\
tplink,archer-c50-v4|\
tplink,tl-mr3420-v5|\
tplink,tl-wr840n-v4|\
tplink,tl-wr840n-v5|\
tplink,tl-wr841n-v13|\
tplink,tl-wr841n-v14|\
tplink,tl-wr842n-v5|\
unielec,u7628-01-128m-16m|\
ubiquiti,edgerouterx|\
ubiquiti,edgerouterx-sfp|\
upvel,ur-326n4g|\
wrtnode,wrtnode|\
wrtnode,wrtnode2p|\
wrtnode,wrtnode2r|\
youhua,wr1200js|\
zbtlink,zbt-wa05|\
zyxel,keenetic-extra-ii)
ucidef_add_switch "switch0" \
"1:lan" "2:lan" "3:lan" "4:lan" "0:wan" "6@eth0"
;;
asiarf,ap7621-001)
ucidef_add_switch "switch0" "0:lan" "4:wan" "6@eth0"
;;
asiarf,ap7621-nv1)
ucidef_add_switch "switch0" "0:wan" "2:lan" "3:lan" "6@eth0"
;;
asiarf,awapn2403)
ucidef_add_switch "switch0" \
"0:lan" "1:wan" "6@eth0"
;;
asus,rt-ac85p|\
dlink,dir-860l-b1|\
elecom,wrc-1167ghbk2-s|\
elecom,wrc-1900gst|\
elecom,wrc-2533gst|\
huawei,hg255d|\
iodata,wn-ax1167gr|\
iodata,wn-gx300gr|\
iptime,a604m)
ucidef_add_switch "switch0" \
"1:lan:4" "2:lan:3" "3:lan:2" "4:lan:1" "0:wan" "6@eth0"
;;
asus,rt-n15|\
belkin,f9k1109v1|\
sitecom,wl-351)
ucidef_add_switch "switch0" \
"0:lan" "1:lan" "2:lan" "3:lan" "4:wan" "5@eth0"
;;
asus,rt-n56u)
ucidef_add_switch "switch0" \
"0:lan" "1:lan" "2:lan" "3:lan" "4:wan" "8@eth0"
;;
asus,wl-330n|\
easyacc,wizard-8800|\
kingston,mlwg2)
ucidef_set_interface_lan "eth0.1"
;;
aximcom,mr-102n|\
kingston,mlw221)
ucidef_set_interface_lan "eth0.2"
;;
belkin,f5d8235-v1|\
belkin,f5d8235-v2|\
buffalo,wzr-agl300nh|\
ralink,v11st-fe|\
trendnet,tew-714tru)
ucidef_add_switch "switch0" \
"1:lan" "2:lan" "3:lan" "4:lan" "0:wan" "5@eth0"
;;
buffalo,wcr-1166ds)
ucidef_add_switch "switch0" \
"3:lan" "4:wan" "6@eth0"
;;
buffalo,whr-300hp2|\
buffalo,whr-600d|\
buffalo,wsr-1166dhp|\
buffalo,wsr-600dhp)
ucidef_add_switch "switch0" \
"0:lan:1" "1:lan:2" "2:lan:3" "3:lan:4" "4:wan:5" "6@eth0"
;;
buffalo,whr-1166d)
ucidef_add_switch "switch0" \
"0:lan" "1:lan" "2:lan" "3:lan" "5:wan" "6@eth0"
;;
comfast,cf-wr800n|\
hnet,c108)
ucidef_add_switch "switch0" \
"4:lan" "6t@eth0"
;;
cudy,wr1000)
ucidef_add_switch "switch0" \
"2:lan:2" "3:lan:1" "4:wan" "6@eth0"
;;
dlink,dir-510l|\
glinet,vixmini|\
netgear,ex6150|\
tplink,re350-v1|\
tplink,re650-v1)
ucidef_add_switch "switch0" \
"0:lan" "6@eth0"
;;
dlink,dir-615-h1|\
d-team,newifi-d2|\
wevo,11acnas|\
wevo,w2914ns-v2|\
zbtlink,zbt-we2026)
ucidef_add_switch "switch0" \
"0:lan:4" "1:lan:3" "2:lan:2" "3:lan:1" "4:wan:5" "6@eth0"
;;
dlink,dwr-118-a1)
ucidef_add_switch "switch0" \
"1:lan:2" "2:lan:3" "3:lan:1" "4:lan:0" "5:wan" "6@eth0"
;;
dlink,dwr-118-a2)
ucidef_add_switch "switch0" \
"1:lan:2" "2:lan:1" "3:lan:3" "4:lan" "0:wan" "6@eth0"
;;
duzun,dm06)
ucidef_add_switch "switch0" \
"1:lan" "0:wan" "6@eth0"
;;
edimax,br-6475nd)
ucidef_add_switch "switch0" \
"1:lan" "2:lan" "3:lan" "4:lan" "0:wan" "9@eth0"
;;
edimax,br-6478ac-v2|\
tplink,archer-c2-v1)
ucidef_add_switch "switch1" \
"1:lan" "2:lan" "3:lan" "4:lan" "0:wan" "6@eth0"
;;
engenius,esr600)
ucidef_add_switch "switch0" \
"1:lan:4" "2:lan:3" "3:lan:2" "4:lan:1" "5:wan" "0@eth0"
;;
fon,fon2601)
ucidef_add_switch "switch0" \
"0:lan" "4:wan" "6@eth0"
;;
edimax,rg21s)
ucidef_add_switch "switch0" \
"1:lan:4" "2:lan:3" "3:lan:2" "4:lan:1" "0:wan" "6@eth0"
;;
gehua,ghl-r-001)
ucidef_add_switch "switch0" \
"0:lan" "1:lan" "2:lan" "4:wan" "6@eth0"
;;
glinet,gl-mt300n-v2)
ucidef_add_switch "switch0" \
"1:lan" "0:wan" "6@eth0"
;;
gnubee,gb-pc1|\
gnubee,gb-pc2)
ucidef_add_switch "switch0" \
"0:lan" "4:lan" "6@eth0"
;;
head-weblink,hdrm200)
ucidef_add_switch "switch0" \
"1:lan" "2:lan" "3:lan" "4:lan" "5:lan" "0:wan" "6@eth0"
;;
hiwifi,hc5761)
ucidef_add_switch "switch0" \
"1:lan" "4:lan" "0:wan" "6@eth0"
;;
hiwifi,hc5861)
ucidef_add_switch "switch0" \
"0:lan" "1:lan" "5:wan" "6@eth0"
;;
iodata,wn-ac1167gr|\
iodata,wn-ac733gr3)
ucidef_add_switch "switch1" \
"1:lan:4" "2:lan:3" "3:lan:2" "4:lan:1" "0:wan" "6@eth0"
;;
lava,lr-25g001|\
sitecom,wlr-6000|\
trendnet,tew-691gr|\
trendnet,tew-692gr)
ucidef_add_switch "switch0" \
"1:lan" "2:lan" "3:lan" "4:lan" "5:wan" "0@eth0"
;;
lenovo,newifi-d1)
ucidef_add_switch "switch0" \
"1:lan:2" "2:lan:1" "4:wan" "6@eth0"
;;
lenovo,newifi-y1|\
zbtlink,zbt-we1226)
ucidef_add_switch "switch0" \
"0:lan:2" "1:lan:1" "4:wan" "6@eth0"
;;
lenovo,newifi-y1s)
ucidef_add_switch "switch0" \
"1:lan:4" "2:lan:3" "4:lan:2" "5:lan:1" "0:wan" "6@eth0"
;;
linksys,e1700|\
ralink,mt7620a-mt7530-evb)
ucidef_add_switch "switch1" \
"0:lan" "1:lan" "2:lan" "3:lan" "4:wan" "6@eth0"
;;
linksys,re6500)
ucidef_add_switch "switch0" \
"0:lan:1" "1:lan:2" "2:lan:3" "3:lan:4" "6@eth0"
;;
netgear,r6120|\
netgear,r6220|\
netgear,r6260|\
netgear,r6350|\
netgear,r6850|\
netgear,wndr3700-v5)
ucidef_add_switch "switch0" \
"0:lan:4" "1:lan:3" "2:lan:2" "3:lan:1" "4:wan" "6@eth0"
;;
nexx,wt1520-4m|\
nexx,wt1520-8m|\
vonets,var11n-300)
ucidef_add_switch "switch0" \
"0:lan" "4:wan" "6@eth0"
;;
nexx,wt3020-4m|\
nexx,wt3020-8m)
ucidef_add_switch "switch0" \
"4:lan" "0: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"
;;
phicomm,psg1218b)
ucidef_add_switch "switch0" \
"0:lan:3" "1:lan:2" "2:lan:1" "3:wan" "6@eth0"
;;
planex,mzk-dp150n|\
vocore,vocore-8m|\
vocore,vocore-16m)
ucidef_add_switch "switch0" \
"0:lan" "4:lan" "6t@eth0"
;;
samsung,cy-swr1100)
ucidef_add_switch "switch0" \
"0:lan" "1:lan" "2:lan" "3:lan" "4:wan" "9@eth0"
;;
sparklan,wcr-150gn|\
zbtlink,we1026-5g-16m)
ucidef_add_switch "switch0" \
"0:lan" "6t@eth0"
;;
tplink,archer-c20-v1|\
tplink,archer-c50-v1)
ucidef_add_switch "switch0" \
"1:lan:3" "2:lan:4" "3:lan:1" "4:lan:2" "0:wan" "6@eth0"
;;
tplink,archer-mr200)
ucidef_add_switch "switch0" \
"0:lan" "1:lan" "2:lan" "3:lan" "6t@eth0"
ucidef_set_interface_wan "usb0"
;;
tplink,tl-wr902ac-v3)
ucidef_add_switch "switch0" \
"4:lan" "6@eth0"
;;
trendnet,tew-638apb-v2)
ucidef_add_switch "switch0" \
"4:lan" "6@eth0"
;;
vocore,vocore2|\
vocore,vocore2-lite)
ucidef_add_switch "switch0" \
"0:lan" "2:lan" "6t@eth0"
;;
wiznet,wizfi630a)
ucidef_add_switch "switch0" \
"0:lan" "1:lan" "2:wan" "6@eth0"
;;
wiznet,wizfi630s)
ucidef_add_switch "switch0" \
"0:wan" "3:lan" "4:lan" "6@eth0"
;;
xiaomi,mir3g)
ucidef_add_switch "switch0" \
"2:lan:2" "3:lan:1" "1:wan" "6t@eth0"
;;
xiaomi,mir3p)
ucidef_add_switch "switch0" \
"1:lan:3" "2:lan:2" "3:lan:1" "4:wan" "6@eth0"
;;
xiaomi,mir4a-100m)
ucidef_add_switch "switch0" \
"4:lan:1" "2:lan:2" "0:wan" "6@eth0"
;;
zyxel,keenetic-omni-ii)
ucidef_add_switch "switch0" \
"0:wan" "1:lan" "2:lan" "3:lan" "4:lan" "6@eth0"
;;
zyxel,keenetic-start)
ucidef_add_switch "switch0" \
"0:lan:3" "1:lan:2" "2:lan:1" "3:lan:0" "4:wan" "6@eth0"
;;
zyxel,keenetic-viva)
ucidef_add_switch "switch1" \
"0:lan" "1:lan" "2:lan" "3:lan" "4:wan" "7t@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
8devices,carambola|\
alfa-network,w502u|\
arcwireless,freestation5|\
lenovo,newifi-y1|\
lenovo,newifi-y1s|\
netgear,wnce2001|\
ohyeah,oy-0001|\
phicomm,k2g|\
skylab,skw92a|\
totolink,lr1200)
wan_mac=$(mtd_get_mac_binary factory 0x2e)
;;
dlink,dir-300-b7|\
dlink,dir-320-b1|\
dlink,dir-620-a1|\
engenius,esr-9753|\
hame,mpr-a1|\
hauppauge,broadway|\
huawei,d105|\
hilink,hlk-7628n|\
hilink,hlk-rm04|\
nexaira,bc2|\
petatel,psr-680w|\
skyline,sl-r7205)
lan_mac=$(macaddr_setbit_la "$(cat /sys/class/net/eth0/address)")
wan_mac=$(macaddr_add "$lan_mac" 1)
;;
asus,rt-ac57u|\
d-team,newifi-d2|\
d-team,pbr-m1|\
elecom,wrc-1167ghbk2-s|\
elecom,wrc-1900gst|\
elecom,wrc-2533gst|\
lenovo,newifi-d1|\
phicomm,k2p|\
planex,vr500|\
samknows,whitebox-v8|\
youku,yk-l2|\
zbtlink,zbt-we3526)
wan_mac=$(mtd_get_mac_binary factory 0xe006)
;;
asus,rt-ac85p)
wan_mac=$(mtd_get_mac_ascii u-boot-env et1macaddr)
;;
asus,rt-n56u)
lan_mac=$(macaddr_setbit_la "$(cat /sys/class/net/eth0/address)")
wan_mac=$(mtd_get_mac_binary factory 0x8004)
;;
belkin,f9k1109v1)
wan_mac=$(mtd_get_mac_ascii uboot-env HW_WAN_MAC)
lan_mac=$(mtd_get_mac_ascii uboot-env HW_LAN_MAC)
label_mac=$wan_mac
;;
buffalo,wcr-1166ds|\
buffalo,wsr-1166dhp)
local index="$(find_mtd_index "board_data")"
wan_mac="$(grep -m1 mac= "/dev/mtd${index}" | cut -d= -f2)"
lan_mac=$wan_mac
;;
buffalo,whr-1166d|\
buffalo,whr-300hp2|\
buffalo,whr-600d|\
buffalo,whr-g300n|\
buffalo,wsr-600dhp|\
glinet,gl-mt300n-v2|\
zyxel,keenetic-start)
# This empty case has to be kept for devices without any MAC address adjustments
;;
cudy,wr1000)
wan_mac=$(mtd_get_mac_binary factory 0x2e)
label_mac=$(cat /sys/class/ieee80211/phy0/macaddress)
;;
dlink,dch-m225|\
samsung,cy-swr1100)
lan_mac=$(mtd_get_mac_ascii factory lanmac)
;;
dlink,dir-510l|\
dlink,dwr-116-a1|\
dlink,dwr-118-a1|\
dlink,dwr-118-a2|\
dlink,dwr-921-c1|\
dlink,dwr-922-e2|\
lava,lr-25g001)
wan_mac=$(jboot_config_read -m -i $(find_mtd_part "config") -o 0xE000)
lan_mac=$(macaddr_add "$wan_mac" 1)
label_mac=$wan_mac
;;
dlink,dir-615-d|\
dlink,dir-615-h1|\
glinet,gl-mt300a|\
glinet,gl-mt300n|\
glinet,gl-mt750|\
zbtlink,zbt-wg3526-16m|\
zbtlink,zbt-wg3526-32m)
wan_mac=$(macaddr_add "$(cat /sys/class/net/eth0/address)" 1)
label_mac=$(cat /sys/class/ieee80211/phy0/macaddress)
;;
dlink,dir-645)
lan_mac=$(mtd_get_mac_ascii nvram lanmac)
wan_mac=$(mtd_get_mac_ascii nvram wanmac)
;;
dlink,dir-860l-b1)
lan_mac=$(mtd_get_mac_ascii factory lanmac)
wan_mac=$(mtd_get_mac_ascii factory wanmac)
label_mac=$(cat /sys/class/ieee80211/phy1/macaddress)
;;
dovado,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)
;;
edimax,br-6475nd)
wan_mac=$(mtd_get_mac_binary devdata 0x7)
;;
edimax,br-6478ac-v2|\
netgear,r6260|\
netgear,r6350|\
netgear,r6850)
wan_mac=$(macaddr_add "$(cat /sys/class/net/eth0/address)" 2)
;;
edimax,rg21s|\
engenius,esr600)
lan_mac=$(mtd_get_mac_ascii u-boot-env ethaddr)
wan_mac=$(mtd_get_mac_ascii u-boot-env wanaddr)
;;
hiwifi,hc5661|\
hiwifi,hc5661a|\
hiwifi,hc5761|\
hiwifi,hc5761a|\
hiwifi,hc5861|\
hiwifi,hc5861b|\
hiwifi,hc5962)
lan_mac=$(mtd_get_mac_ascii bdinfo "Vfac_mac ")
label_mac=$lan_mac
[ -n "$lan_mac" ] || lan_mac=$(cat /sys/class/net/eth0/address)
wan_mac=$(macaddr_add "$lan_mac" 1)
;;
iodata,wn-ac1167gr|\
iodata,wn-ac733gr3)
wan_mac=$(macaddr_add "$(mtd_get_mac_binary factory 0x4)" -1)
;;
iodata,wn-ax1167gr|\
iodata,wn-gx300gr|\
trendnet,tew-692gr)
wan_mac=$(macaddr_add "$(mtd_get_mac_binary factory 0x4)" 1)
;;
iptime,a604m)
wan_mac=$(mtd_get_mac_binary u-boot 0x1fc40)
;;
linksys,e1700)
wan_mac=$(mtd_get_mac_ascii config WAN_MAC_ADDR)
;;
mediatek,linkit-smart-7688|\
onion,omega2|\
onion,omega2p)
wan_mac=$(mtd_get_mac_binary factory 0x4)
lan_mac=$(mtd_get_mac_binary factory 0x2e)
;;
mercury,mac1200r-v2)
wan_mac=$(macaddr_add "$(mtd_get_mac_binary factory_info 0xd)" 1)
;;
poray,m3|\
poray,m4-4m|\
poray,m4-8m|\
poray,x5|\
poray,x8)
lan_mac=$(macaddr_add "$(cat /sys/class/net/eth0/address)" -2)
;;
sitecom,wlr-6000)
wan_mac=$(macaddr_add "$(mtd_get_mac_binary factory 0x8004)" 2)
;;
sparklan,wcr-150gn|\
wiznet,wizfi630a|\
zyxel,keenetic-omni|\
zyxel,keenetic-omni-ii|\
zyxel,keenetic-viva)
wan_mac=$(mtd_get_mac_binary factory 0x28)
;;
tenda,w306r-v2)
wan_mac=$(macaddr_add "$(cat /sys/class/net/eth0/address)" 5)
;;
trendnet,tew-691gr)
wan_mac=$(macaddr_add "$(mtd_get_mac_binary factory 0x4)" 3)
;;
vocore,vocore2|\
vocore,vocore2-lite)
label_mac=$(cat /sys/class/ieee80211/phy0/macaddress)
;;
xiaomi,mir3g)
lan_mac=$(mtd_get_mac_binary factory 0xe006)
;;
xiaomi,mir3p)
lan_mac=$(mtd_get_mac_binary factory 0xe006)
label_mac=$lan_mac
;;
xiaomi,miwifi-mini)
lan_mac=$(macaddr_setbit_la "$(cat /sys/class/net/eth0/address)")
;;
zbtlink,zbt-we1326)
wan_mac=$(mtd_get_mac_binary factory 0xe006)
label_mac=$(cat /sys/class/ieee80211/phy0/macaddress)
;;
*)
wan_mac=$(macaddr_add "$(cat /sys/class/net/eth0/address)" 1)
;;
esac
[ -n "$lan_mac" ] && ucidef_set_interface_macaddr "lan" $lan_mac
[ -n "$wan_mac" ] && ucidef_set_interface_macaddr "wan" $wan_mac
[ -n "$label_mac" ] && ucidef_set_label_macaddr $label_mac
}
board_config_update
board=$(board_name)
ramips_setup_interfaces $board
ramips_setup_macs $board
board_config_flush
exit 0