forked from Ivasoft/openwrt
Right now this patch adds nor image generation only. NAND image generation is not supportet at the moment. Furtheremore support for the MicroSD port is not implemented as of now. Specification: - SOC: QCA9563 (775MHz) - Flash: 16 MiB (W25Q128FVSG) - RAM: 128 MiB DDR2 - Ethernet: 2x 1Gbps LAN + 1x 1Gbps WAN - Wireless: 2.4GHz (bgn) and 5GHz (ac) - USB: 1x USB 2.0 port - Button: 1x switch button, 1x reset button - LED: 3x LEDS (green) - Another LED can be accessed on GPIO 7 if soldered Flash instruction: - Set static ip to 192.168.1.2 - Unplug the power cord - Hold reset button - Plug power back in - Right led will flash 5 times - Release reset button - Browse to 192.168.1.1 - Choose sysupgrade image in NOR-flash section - Press "update nor firmware" - After successful transfer unplug network cable before device restarts Signed-off-by: Christoph Krapp <achterin@googlemail.com> [resolve merge conflicts, rename buttons, use switch input type for mode switch] Signed-off-by: Mathias Kresin <dev@kresin.me>
305 lines
7.4 KiB
Bash
Executable File
305 lines
7.4 KiB
Bash
Executable File
#!/bin/sh
|
|
|
|
. /lib/functions/system.sh
|
|
. /lib/functions/uci-defaults.sh
|
|
. /lib/functions/k2t.sh
|
|
|
|
ath79_setup_interfaces()
|
|
{
|
|
local board="$1"
|
|
|
|
case "$board" in
|
|
avm,fritz300e|\
|
|
devolo,dvl1750c|\
|
|
ocedo,koala|\
|
|
ocedo,raccoon|\
|
|
pcs,cap324|\
|
|
pisen,wmm003n|\
|
|
pqi,air-pen|\
|
|
tplink,re450-v2|\
|
|
tplink,tl-mr10u|\
|
|
tplink,tl-mr3020-v1|\
|
|
tplink,tl-mr3040-v2|\
|
|
tplink,tl-wa901nd-v2|\
|
|
tplink,tl-wr703n|\
|
|
ubnt,bullet-m|\
|
|
ubnt,bullet-m-xw|\
|
|
ubnt,lap-120|\
|
|
ubnt,nanostation-ac-loco|\
|
|
ubnt,rocket-m|\
|
|
ubnt,unifiac-lite|\
|
|
ubnt,unifiac-mesh|\
|
|
ubnt,unifi|\
|
|
wd,mynet-wifi-rangeextender|\
|
|
winchannel,wb2000)
|
|
ucidef_set_interface_lan "eth0"
|
|
;;
|
|
avm,fritz4020|\
|
|
tplink,archer-c58-v1|\
|
|
tplink,archer-c59-v1)
|
|
ucidef_set_interface_wan "eth0"
|
|
ucidef_add_switch "switch0" \
|
|
"0@eth1" "1:lan:1" "2:lan:4" "3:lan:3" "4:lan:2"
|
|
;;
|
|
buffalo,bhr-4grv|\
|
|
buffalo,wzr-hp-g450h)
|
|
ucidef_add_switch "switch0" \
|
|
"0@eth0" "2:lan" "3:lan" "4:lan" "5:lan" "1:wan"
|
|
;;
|
|
buffalo,bhr-4grv2)
|
|
ucidef_add_switch "switch0" \
|
|
"0@eth1" "1:lan" "2:lan" "3:lan" "4:lan" "5:wan" "6@eth0"
|
|
;;
|
|
buffalo,wzr-hp-ag300h)
|
|
ucidef_set_interface_wan "eth1"
|
|
ucidef_add_switch "switch0" \
|
|
"0@eth0" "1:lan:4" "2:lan:3" "3:lan:2" "4:lan:1"
|
|
;;
|
|
buffalo,wzr-hp-g302h-a1a0)
|
|
ucidef_add_switch "switch0" \
|
|
"0@eth0" "1:lan:1" "3:lan:4" "4:lan:3" "5:lan:2" "2:wan"
|
|
;;
|
|
devolo,dvl1200e)
|
|
ucidef_set_interface_lan "eth0 eth1"
|
|
;;
|
|
dlink,dir-825-b1)
|
|
ucidef_set_interface_wan "eth1"
|
|
ucidef_add_switch "switch0" \
|
|
"0:lan" "1:lan" "2:lan" "3:lan" "5@eth0"
|
|
;;
|
|
dlink,dir-825-c1|\
|
|
dlink,dir-835-a1|\
|
|
iodata,etg3-r|\
|
|
iodata,wn-ac1167dgr|\
|
|
iodata,wn-ac1600dgr2|\
|
|
iodata,wn-ag300dgr|\
|
|
pcs,cr5000)
|
|
ucidef_add_switch "switch0" \
|
|
"0@eth0" "1:lan" "2:lan" "3:lan" "4:lan" "5:wan"
|
|
;;
|
|
elecom,wrc-300ghbk2-i)
|
|
ucidef_add_switch "switch0" \
|
|
"0@eth0" "2:lan:4" "3:lan:3" "4:lan:2" "5:lan:1" "1:wan"
|
|
;;
|
|
embeddedwireless,dorin)
|
|
ucidef_add_switch "switch0" \
|
|
"0@eth0" "1:wan" "2:lan:3" "3:lan:2"
|
|
;;
|
|
etactica,eg200)
|
|
ucidef_set_interface_lan "eth0" "dhcp"
|
|
;;
|
|
glinet,ar150|\
|
|
glinet,ar300m|\
|
|
glinet,gl-x750)
|
|
ucidef_set_interfaces_lan_wan "eth1" "eth0"
|
|
;;
|
|
glinet,ar750s)
|
|
ucidef_add_switch "switch0" \
|
|
"0@eth0" "2:lan:2" "3:lan:1" "1:wan"
|
|
;;
|
|
nec,wg800hp)
|
|
ucidef_add_switch "switch0" \
|
|
"0@eth0" "2:lan" "3:lan" "4:lan" "1:wan"
|
|
;;
|
|
netgear,wndr3700|\
|
|
netgear,wndr3700v2|\
|
|
netgear,wndr3800)
|
|
ucidef_set_interfaces_lan_wan "eth0" "eth1"
|
|
ucidef_add_switch "switch0" \
|
|
"0:lan:4" "1:lan:3" "2:lan:2" "3:lan:1" "5u@eth0"
|
|
ucidef_add_switch_attr "switch0" "blinkrate" 2
|
|
ucidef_add_switch_port_attr "switch0" 1 led 6
|
|
ucidef_add_switch_port_attr "switch0" 2 led 9
|
|
ucidef_add_switch_port_attr "switch0" 5 led 2
|
|
;;
|
|
netgear,wnr612-v2|\
|
|
on,n150r)
|
|
ucidef_set_interface_wan "eth0"
|
|
ucidef_add_switch "switch0" \
|
|
"0@eth1" "1:lan" "2:lan" "3:lan:3" "4:lan:4"
|
|
;;
|
|
pcs,cr3000)
|
|
ucidef_add_switch "switch0" \
|
|
"0@eth1" "1:lan:1" "2:lan:4" "3:lan:3" "4:lan:2"
|
|
ucidef_set_interface_wan "eth0"
|
|
;;
|
|
phicomm,k2t)
|
|
ucidef_add_switch "switch0" \
|
|
"0@eth0" "3:lan:1" "5:lan:2" "4:wan"
|
|
;;
|
|
rosinson,wr818)
|
|
ucidef_add_switch "switch0" \
|
|
"0@eth0" "1:lan" "2:lan" "3:wan"
|
|
;;
|
|
tplink,archer-c7-v1|\
|
|
tplink,archer-c7-v2|\
|
|
tplink,tl-wdr4900-v2)
|
|
ucidef_add_switch "switch0" \
|
|
"0@eth1" "2:lan" "3:lan" "4:lan" "5:lan" "6@eth0" "1:wan"
|
|
;;
|
|
buffalo,whr-g301n|\
|
|
tplink,tl-mr3220-v1|\
|
|
tplink,tl-mr3420-v1|\
|
|
tplink,tl-wr841-v7|\
|
|
ubnt,airrouter)
|
|
ucidef_set_interface_wan "eth0"
|
|
ucidef_add_switch "switch0" \
|
|
"0@eth1" "1:lan:4" "2:lan:3" "3:lan:2" "4:lan:1"
|
|
;;
|
|
tplink,archer-a7-v5|\
|
|
tplink,archer-c7-v5|\
|
|
tplink,tl-wdr3600|\
|
|
tplink,tl-wdr4300)
|
|
ucidef_add_switch "switch0" \
|
|
"0@eth0" "2:lan:1" "3:lan:2" "4:lan:3" "5:lan:4" "1:wan"
|
|
;;
|
|
tplink,tl-wr1043nd-v1)
|
|
ucidef_add_switch "switch0" \
|
|
"1:lan" "2:lan" "3:lan" "4:lan" "0:wan" "5@eth0"
|
|
;;
|
|
tplink,tl-wr1043nd-v2|\
|
|
tplink,tl-wr1043nd-v3)
|
|
ucidef_add_switch "switch0" \
|
|
"0@eth1" "1:lan:4" "2:lan:3" "3:lan:2" "4:lan:1" "5:wan" "6@eth0"
|
|
;;
|
|
dlink,dir-859-a1|\
|
|
tplink,tl-wr1043nd-v4)
|
|
ucidef_add_switch "switch0" \
|
|
"0@eth0" "1:lan:4" "2:lan:3" "3:lan:2" "4:lan:1" "5:wan"
|
|
;;
|
|
tplink,tl-wr2543-v1)
|
|
ucidef_add_switch "switch0" \
|
|
"1:lan" "2:lan" "3:lan" "4:lan" "0:wan" "9@eth0"
|
|
;;
|
|
tplink,tl-wr740n-v1|\
|
|
tplink,tl-wr740n-v3|\
|
|
tplink,tl-wr741-v1|\
|
|
tplink,tl-wr743nd-v1|\
|
|
tplink,tl-wr841-v5|\
|
|
tplink,tl-wr941-v4)
|
|
ucidef_set_interface_wan "eth0"
|
|
ucidef_add_switch "switch0" \
|
|
"0@eth1" "1:lan" "2:lan" "3:lan" "4:lan"
|
|
;;
|
|
tplink,tl-wr740nd-v4|\
|
|
tplink,tl-wr842n-v1|\
|
|
tplink,tl-wr842n-v2)
|
|
ucidef_set_interface_wan "eth0"
|
|
ucidef_add_switch "switch0" \
|
|
"0@eth1" "1:lan:4" "2:lan:1" "3:lan:2" "4:lan:3"
|
|
;;
|
|
tplink,tl-wr741nd-v4|\
|
|
tplink,tl-wr841-v9|\
|
|
tplink,tl-wr841-v11)
|
|
ucidef_set_interface_wan "eth0"
|
|
ucidef_add_switch "switch0" \
|
|
"0@eth1" "1:lan:4" "2:lan:3" "3:lan:2" "4:lan:1"
|
|
;;
|
|
tplink,tl-wr941-v2)
|
|
ucidef_set_interfaces_lan_wan "lan1 lan2 lan3 lan4" "wan"
|
|
;;
|
|
ubnt,routerstation)
|
|
ucidef_set_interfaces_lan_wan "eth1" "eth0"
|
|
;;
|
|
ubnt,routerstation-pro)
|
|
ucidef_set_interface_wan "eth0"
|
|
ucidef_add_switch "switch0" \
|
|
"0@eth1" "2:lan:3" "3:lan:2" "4:lan:1"
|
|
;;
|
|
ubnt,nanostation-ac|\
|
|
ubnt,unifiac-mesh-pro|\
|
|
ubnt,unifiac-pro)
|
|
ucidef_add_switch "switch0" \
|
|
"0@eth0" "2:lan" "3:wan"
|
|
;;
|
|
*)
|
|
ucidef_set_interfaces_lan_wan "eth0" "eth1"
|
|
;;
|
|
esac
|
|
}
|
|
|
|
ath79_setup_macs()
|
|
{
|
|
local board="$1"
|
|
|
|
case "$board" in
|
|
avm,fritz300e)
|
|
lan_mac=$(fritz_tffs -n maca -i $(find_mtd_part "tffs (1)"))
|
|
;;
|
|
avm,fritz4020)
|
|
lan_mac=$(fritz_tffs -n maca -i $(find_mtd_part "tffs (1)"))
|
|
wan_mac=$(fritz_tffs -n macb -i $(find_mtd_part "tffs (1)"))
|
|
;;
|
|
dlink,dir-825-b1)
|
|
lan_mac=$(mtd_get_mac_text "caldata" 65440)
|
|
wan_mac=$(mtd_get_mac_text "caldata" 65460)
|
|
;;
|
|
dlink,dir-825-c1|\
|
|
dlink,dir-835-a1)
|
|
lan_mac=$(mtd_get_mac_text "mac" 4)
|
|
wan_mac=$(mtd_get_mac_text "mac" 24)
|
|
;;
|
|
dlink,dir-859-a1)
|
|
lan_mac=$(mtd_get_mac_ascii devdata "lanmac")
|
|
wan_mac=$(mtd_get_mac_ascii devdata "wanmac")
|
|
;;
|
|
elecom,wrc-300ghbk2-i)
|
|
wan_mac=$(macaddr_add "$(mtd_get_mac_binary ART 4098)" -2)
|
|
;;
|
|
iodata,etg3-r)
|
|
lan_mac=$(mtd_get_mac_ascii u-boot-env ethaddr)
|
|
wan_mac=$(macaddr_add "$lan_mac" -1)
|
|
;;
|
|
iodata,wn-ac1167dgr|\
|
|
iodata,wn-ac1600dgr2|\
|
|
iodata,wn-ag300dgr)
|
|
lan_mac=$(mtd_get_mac_ascii u-boot-env ethaddr)
|
|
wan_mac=$(mtd_get_mac_ascii u-boot-env wanaddr)
|
|
;;
|
|
nec,wg800hp)
|
|
lan_mac=$(mtd_get_mac_text board_data 640)
|
|
wan_mac=$(mtd_get_mac_text board_data 1152)
|
|
;;
|
|
netgear,wndr3700|\
|
|
netgear,wndr3700v2|\
|
|
netgear,wndr3800)
|
|
lan_mac=$(macaddr_setbit_la "$(mtd_get_mac_binary art 0)")
|
|
;;
|
|
phicomm,k2t)
|
|
lan_mac=$(k2t_get_mac "lan_mac")
|
|
wan_mac=$(k2t_get_mac "wan_mac")
|
|
;;
|
|
rosinson,wr818)
|
|
wan_mac=$(mtd_get_mac_binary factory 0)
|
|
lan_mac=$(macaddr_setbit_la "$wan_mac")
|
|
;;
|
|
tplink,tl-wr1043nd-v4)
|
|
base_mac=$(mtd_get_mac_binary product-info 8)
|
|
wan_mac=$(macaddr_add "$base_mac" 1)
|
|
;;
|
|
tplink,tl-wr941-v2)
|
|
base_mac=$(mtd_get_mac_binary u-boot 130048)
|
|
wan_mac=$(macaddr_add "$base_mac" 1)
|
|
;;
|
|
ubnt,routerstation|\
|
|
ubnt,routerstation-pro)
|
|
wan_mac=$(fconfig -s -r -d $(find_mtd_part "RedBoot config") -n ar7100_esa)
|
|
lan_mac=$(macaddr_add "$wan_mac" 1)
|
|
;;
|
|
wd,mynet-wifi-rangeextender)
|
|
lan_mac=$(nvram get et0macaddr)
|
|
;;
|
|
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)
|
|
ath79_setup_interfaces $board
|
|
ath79_setup_macs $board
|
|
board_config_flush
|
|
|
|
exit 0
|