CPU: AR9342 SoC RAM: 64 MB DDR2 Flash: 8 MB NOR SPI Ports: 2x100 MBit (24V PoE in, 24V PoE out), AR8236 switch WLAN: 2.4/5 GHz UART: 1 UART LEDs: Power, 2x Ethernet, 4x RSSI LEDs (orange, red, 2x green) Buttons: Reset Flashing instructions using recovery method over TFTP 1. Unplug the ethernet cable from the router. 2. Using paper clip press and hold the router's reset button. Make sure you can feel it depressed by the paper clip. Do not release the button until step 4. 3. While keeping the reset button pressed in, plug the ethernet cable back into the AP. Keep the reset button depressed until you see the device's LEDs flashing in upgrade mode (alternating LED1/LED3 and LED2/LED4), this may take up to 25 seconds. 4. You may release the reset button, now the device should be in TFTP transfer mode. 5. Set a static IP on your Computer's NIC. A static IP of 192.168.1.25/24 should work. 6. Plug the PoE injector's LAN cable directly to your computer. 7. Start tftp client and issue following commands: tftp> binary tftp> connect 192.168.1.20 tftp> put openwrt-ath79-generic-ubnt-nano-m-xw-squashfs-factory.bin Tested-by: Joe Ayers <ae6xe@arrl.net> Signed-off-by: Petr Štetiar <ynezz@true.cz>
331 lines
8.1 KiB
Bash
Executable file
331 lines
8.1 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,dvl1200i|\
|
|
devolo,dvl1750c|\
|
|
devolo,dvl1750i|\
|
|
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|\
|
|
pcs,cr3000|\
|
|
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|\
|
|
devolo,dvl1750e)
|
|
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|\
|
|
dlink,dir-859-a1|\
|
|
tplink,archer-c2-v3|\
|
|
tplink,tl-wr1043nd-v4)
|
|
ucidef_add_switch "switch0" \
|
|
"0@eth0" "1:lan:4" "2:lan:3" "3:lan:2" "4:lan:1" "5:wan"
|
|
;;
|
|
elecom,wrc-1750ghbk2-i|\
|
|
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"
|
|
;;
|
|
engenius,ews511ap)
|
|
ucidef_set_interface_lan "eth0 eth1" "dhcp"
|
|
;;
|
|
etactica,eg200)
|
|
ucidef_set_interface_lan "eth0" "dhcp"
|
|
;;
|
|
glinet,gl-ar150|\
|
|
glinet,gl-ar300m-nand|\
|
|
glinet,gl-ar300m-nor|\
|
|
glinet,gl-x750|\
|
|
tplink,tl-wr810n-v1|\
|
|
tplink,tl-wr810n-v2|\
|
|
ubnt,routerstation)
|
|
ucidef_set_interfaces_lan_wan "eth1" "eth0"
|
|
;;
|
|
glinet,gl-ar750s)
|
|
ucidef_add_switch "switch0" \
|
|
"0@eth0" "2:lan:2" "3:lan:1" "1:wan"
|
|
;;
|
|
iodata,etg3-r|\
|
|
iodata,wn-ac1167dgr|\
|
|
iodata,wn-ac1600dgr|\
|
|
iodata,wn-ac1600dgr2|\
|
|
iodata,wn-ag300dgr|\
|
|
pcs,cr5000)
|
|
ucidef_add_switch "switch0" \
|
|
"0@eth0" "1:lan" "2:lan" "3:lan" "4:lan" "5: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|\
|
|
tplink,tl-wr841-v7)
|
|
ucidef_set_interface_wan "eth0"
|
|
ucidef_add_switch "switch0" \
|
|
"0@eth1" "1:lan" "2:lan" "3:lan" "4:lan"
|
|
;;
|
|
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-c5-v1|\
|
|
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-v9|\
|
|
tplink,tl-wr841-v11|\
|
|
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-c6-v2|\
|
|
tplink,archer-c7-v4|\
|
|
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"
|
|
;;
|
|
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-wr740n-v4|\
|
|
tplink,tl-wr741nd-v4|\
|
|
tplink,tl-wr841-v8|\
|
|
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-wr941-v2)
|
|
ucidef_set_interfaces_lan_wan "lan1 lan2 lan3 lan4" "wan"
|
|
;;
|
|
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-m-xw)
|
|
ucidef_add_switch "switch0" \
|
|
"0@eth0" "5:lan" "1:wan"
|
|
;;
|
|
ubnt,nanostation-ac|\
|
|
ubnt,unifiac-mesh-pro|\
|
|
ubnt,unifiac-pro)
|
|
ucidef_add_switch "switch0" \
|
|
"0@eth0" "2:lan" "3:wan"
|
|
;;
|
|
xiaomi,mi-router-4q)
|
|
ucidef_set_interface_wan "eth0"
|
|
ucidef_add_switch "switch0" \
|
|
"0@eth1" "3:lan:1" "4:lan:2"
|
|
;;
|
|
*)
|
|
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-1750ghbk2-i|\
|
|
elecom,wrc-300ghbk2-i)
|
|
wan_mac=$(macaddr_add "$(mtd_get_mac_binary ART 4098)" -2)
|
|
;;
|
|
engenius,ews511ap)
|
|
lan_mac=$(mtd_get_mac_text "u-boot-env" 233)
|
|
eth1_mac=$(macaddr_add "$lan_mac" 1)
|
|
ucidef_set_interface "eth0" ifname "eth0" protocol "none" macaddr "$lan_mac"
|
|
ucidef_set_interface "eth1" ifname "eth1" protocol "none" macaddr "$eth1_mac"
|
|
;;
|
|
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-ac1600dgr|\
|
|
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,archer-c7-v4)
|
|
base_mac=$(mtd_get_mac_binary config 8)
|
|
wan_mac=$(macaddr_add "$base_mac" 1)
|
|
;;
|
|
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
|