mirror of
https://git.openwrt.org/openwrt/openwrt.git
synced 2024-05-26 09:26:15 +02:00
b893aa7992
Linksys E5400 is a 2.4/5GHz dual band AC router, based on MediaTek MT7628AN. This device is also sold as Linksys E2500v4, E5300 and E5350 with the same hardware, but software speed limitations in vendor firmwares. Specification: * SoC: MT7628AN (580 MHz) * RAM: DDR2 64 MiB * Flash: 16 MiB NOR (W25Q128BV) * Wi-Fi: * 2.4GHz: SoC Built-in * 5GHz: MT7612EN * Ethernet: 5x 100Mbps * Switch: SoC built-in * UART: * 115200, 8N1, 3.3V (real u-boot speed: 119050) * Pinout JB4: 1:[3V3] (TXD) (RXD) [NC] (GND) Flash Layout: 0x0000000-0x0030000 : "Bootloader" 0x0030000-0x0040000 : "Config" 0x0040000-0x0050000 : "Factory" 0x0050000-0x0ff0000 : "Kernel" 0x0ff0000-0x1000000 : "CBTinfo" MAC address: LAN: factory 0x28 WAN: LAN + 1 2.4G: LAN + 2 5G: LAN + 3 Installation: 1. Connect to UART, use LF as EOL (not CRLF) 2. Set IP address - Press 4 during boot - setenv serverip <TFTPSERVER_IP> - setenv ipaddr <DEVICE_IP> - setenv bootfile openwrt-ramips-mt76x8-linksys_e5400-initramfs-kernel.bin - saveenv - reset 3. Load Openwrt Kernel image from TFTP: - Press 1 during boot - IP and filename should be already set 4. Boot into OpenWrt and perform sysupgrade with sysupgrade image. Signed-off-by: Julien Dusser <julien.dusser@free.fr>
319 lines
7.2 KiB
Plaintext
319 lines
7.2 KiB
Plaintext
|
|
. /lib/functions.sh
|
|
. /lib/functions/uci-defaults.sh
|
|
. /lib/functions/system.sh
|
|
|
|
ramips_setup_interfaces()
|
|
{
|
|
local board="$1"
|
|
|
|
case $board in
|
|
alfa-network,awusfree1|\
|
|
d-team,pbr-d1|\
|
|
dlink,dap-1325-a1|\
|
|
glinet,microuter-n300|\
|
|
glinet,vixmini|\
|
|
hak5,wifi-pineapple-mk7|\
|
|
hiwifi,hc5611|\
|
|
mediatek,linkit-smart-7688|\
|
|
minew,g1-c|\
|
|
onion,omega2p|\
|
|
onion,omega2|\
|
|
ravpower,rp-wd009|\
|
|
tama,w06|\
|
|
tplink,re200-v2|\
|
|
tplink,re200-v3|\
|
|
tplink,re200-v4|\
|
|
tplink,re220-v2|\
|
|
tplink,re305-v1|\
|
|
tplink,re305-v3|\
|
|
tplink,tl-wr802n-v4|\
|
|
tplink,tl-wa801nd-v5|\
|
|
widora,neo-16m|\
|
|
widora,neo-32m)
|
|
ucidef_add_switch "switch0"
|
|
ucidef_add_switch_attr "switch0" "enable" "false"
|
|
ucidef_set_interface_lan "eth0"
|
|
;;
|
|
asus,rt-ac1200|\
|
|
asus,rt-ac1200-v2|\
|
|
hilink,hlk-7628n|\
|
|
hilink,hlk-7688a|\
|
|
hiwifi,hc5861b|\
|
|
kroks,kndrt31r16|\
|
|
skylab,skw92a|\
|
|
tplink,archer-c20-v4|\
|
|
tplink,archer-c20-v5|\
|
|
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|\
|
|
tplink,tl-wr850n-v2|\
|
|
unielec,u7628-01-16m|\
|
|
wrtnode,wrtnode2p|\
|
|
wrtnode,wrtnode2r|\
|
|
zyxel,keenetic-extra-ii)
|
|
ucidef_add_switch "switch0" \
|
|
"1:lan" "2:lan" "3:lan" "4:lan" "0:wan" "6@eth0"
|
|
;;
|
|
asus,rt-n10p-v3|\
|
|
asus,rt-n11p-b1|\
|
|
asus,rt-n12-vp-b1|\
|
|
hiwifi,hc5661a|\
|
|
mediatek,mt7628an-eval-board|\
|
|
mercury,mac1200r-v2|\
|
|
totolink,lr1200|\
|
|
wavlink,wl-wn570ha1|\
|
|
wavlink,wl-wn575a3)
|
|
ucidef_add_switch "switch0" \
|
|
"0:lan" "1:lan" "2:lan" "3:lan" "4:wan" "6@eth0"
|
|
;;
|
|
buffalo,wcr-1166ds|\
|
|
elecom,wrc-1167fs|\
|
|
wavlink,wl-wn577a2|\
|
|
wavlink,wl-wn578a2)
|
|
ucidef_add_switch "switch0" \
|
|
"3:lan" "4:wan" "6@eth0"
|
|
;;
|
|
comfast,cf-wr617ac)
|
|
ucidef_add_switch "switch0" \
|
|
"1:lan:3" "2:lan:2" "3:lan:1" "4:wan" "6@eth0"
|
|
;;
|
|
comfast,cf-wr758ac-v1|\
|
|
comfast,cf-wr758ac-v2|\
|
|
tplink,tl-wr902ac-v3|\
|
|
wavlink,wl-wn576a2)
|
|
ucidef_add_switch "switch0" \
|
|
"4:lan" "6@eth0"
|
|
;;
|
|
cudy,wr1000)
|
|
ucidef_add_switch "switch0" \
|
|
"2:lan:2" "3:lan:1" "4:wan" "6@eth0"
|
|
;;
|
|
duzun,dm06|\
|
|
glinet,gl-mt300n-v2)
|
|
ucidef_add_switch "switch0" \
|
|
"1:lan" "0:wan" "6@eth0"
|
|
;;
|
|
hiwifi,hc5761a)
|
|
ucidef_add_switch "switch0" \
|
|
"0:lan" "1:lan" "4:wan" "6@eth0"
|
|
;;
|
|
iptime,a3|\
|
|
totolink,a3)
|
|
ucidef_add_switch "switch0" \
|
|
"2:lan:2" "3:lan:1" "0:wan" "6@eth0"
|
|
;;
|
|
iptime,a604m)
|
|
ucidef_add_switch "switch0" \
|
|
"1:lan:4" "2:lan:3" "3:lan:2" "4:lan:1" "0:wan" "6@eth0"
|
|
;;
|
|
jotale,js76x8-8m|\
|
|
jotale,js76x8-16m|\
|
|
jotale,js76x8-32m)
|
|
ucidef_add_switch "switch0" \
|
|
"0:lan" "1:lan" "2:lan" "6@eth0"
|
|
;;
|
|
kroks,kndrt31r19)
|
|
ucidef_add_switch "switch0" \
|
|
"0:lan" "6@eth0"
|
|
ucidef_add_switch_attr "switch0" "enable" "false"
|
|
ucidef_set_interface_lan "eth0"
|
|
ucidef_set_interface "wan" device "/dev/cdc-wdm0" protocol "qmi"
|
|
;;
|
|
linksys,e5400)
|
|
ucidef_add_switch "switch0" \
|
|
"0:lan:1" "1:lan:2" "2:lan:3" "3:lan:4" "4:wan" "6@eth0"
|
|
;;
|
|
motorola,mwr03)
|
|
ucidef_add_switch "switch0" \
|
|
"1:lan" "2:lan" "3:lan" "0:wan" "6@eth0"
|
|
;;
|
|
netgear,r6020|\
|
|
netgear,r6080|\
|
|
netgear,r6120|\
|
|
wavlink,wl-wn531a3)
|
|
ucidef_add_switch "switch0" \
|
|
"0:lan:4" "1:lan:3" "2:lan:2" "3:lan:1" "4:wan" "6@eth0"
|
|
;;
|
|
rakwireless,rak633)
|
|
ucidef_add_switch "switch0" \
|
|
"0:wan" "1:lan" "2:lan" "3:lan" "4:lan" "6t@eth0"
|
|
;;
|
|
tplink,tl-mr3020-v3)
|
|
ucidef_add_switch "switch0" \
|
|
"0:lan" "6@eth0"
|
|
;;
|
|
tplink,tl-mr6400-v4)
|
|
ucidef_add_switch "switch0" \
|
|
"1:lan" "2:lan" "3:lan" "4:wan" "6@eth0"
|
|
;;
|
|
tplink,tl-mr6400-v5)
|
|
ucidef_add_switch "switch0" \
|
|
"0:lan" "1:lan" "2:lan" "3:wan" "6@eth0"
|
|
;;
|
|
vocore,vocore2|\
|
|
vocore,vocore2-lite)
|
|
ucidef_add_switch "switch0" \
|
|
"0:lan" "2:lan" "6t@eth0"
|
|
;;
|
|
wiznet,wizfi630s)
|
|
ucidef_add_switch "switch0" \
|
|
"0:wan" "3:lan" "4:lan" "6@eth0"
|
|
;;
|
|
xiaomi,mi-router-4a-100m|\
|
|
xiaomi,mi-router-4a-100m-intl)
|
|
ucidef_add_switch "switch0" \
|
|
"4:lan:1" "2:lan:2" "0:wan" "6@eth0"
|
|
;;
|
|
xiaomi,mi-router-4c)
|
|
ucidef_add_switch "switch0" \
|
|
"4:lan:1" "2:lan:2" "1:wan" "6@eth0"
|
|
;;
|
|
xiaomi,miwifi-3c)
|
|
ucidef_add_switch "switch0" \
|
|
"0:wan" "2:lan:2" "4:lan:1" "6@eth0"
|
|
;;
|
|
xiaomi,miwifi-nano)
|
|
ucidef_add_switch "switch0" \
|
|
"0:lan:2" "2:lan:1" "4:wan" "6@eth0"
|
|
;;
|
|
zbtlink,zbt-we1226)
|
|
ucidef_add_switch "switch0" \
|
|
"0:lan:2" "1:lan:1" "4:wan" "6@eth0"
|
|
;;
|
|
esac
|
|
}
|
|
|
|
ramips_setup_macs()
|
|
{
|
|
local board="$1"
|
|
local lan_mac=""
|
|
local wan_mac=""
|
|
local label_mac=""
|
|
|
|
case $board in
|
|
asus,rt-ac1200)
|
|
wan_mac=$(mtd_get_mac_binary factory 0x22)
|
|
;;
|
|
elecom,wrc-1167fs)
|
|
wan_mac=$(mtd_get_mac_binary factory 0x22)
|
|
label_mac=$wan_mac
|
|
;;
|
|
buffalo,wcr-1166ds)
|
|
wan_mac=$(mtd_get_mac_ascii board_data "mac")
|
|
lan_mac=$wan_mac
|
|
label_mac=$wan_mac
|
|
;;
|
|
comfast,cf-wr617ac)
|
|
lan_mac=$(mtd_get_mac_binary factory 0xe000)
|
|
wan_mac=$(macaddr_add "$lan_mac" 1)
|
|
;;
|
|
cudy,wr1000|\
|
|
hilink,hlk-7628n|\
|
|
hilink,hlk-7688a|\
|
|
wavlink,wl-wn531a3|\
|
|
wavlink,wl-wn577a2|\
|
|
wavlink,wl-wn578a2)
|
|
wan_mac=$(mtd_get_mac_binary factory 0x2e)
|
|
label_mac=$(mtd_get_mac_binary factory 0x4)
|
|
;;
|
|
duzun,dm06|\
|
|
netgear,r6020|\
|
|
netgear,r6080|\
|
|
netgear,r6120|\
|
|
wrtnode,wrtnode2p|\
|
|
wrtnode,wrtnode2r|\
|
|
zyxel,keenetic-extra-ii)
|
|
wan_mac=$(macaddr_add "$(mtd_get_mac_binary factory 0x4)" 1)
|
|
;;
|
|
hiwifi,hc5611|\
|
|
hiwifi,hc5661a|\
|
|
hiwifi,hc5761a|\
|
|
hiwifi,hc5861b)
|
|
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)
|
|
;;
|
|
iptime,a3|\
|
|
iptime,a604m|\
|
|
totolink,a3)
|
|
wan_mac=$(mtd_get_mac_binary u-boot 0x1fc40)
|
|
;;
|
|
jotale,js76x8-8m|\
|
|
jotale,js76x8-16m|\
|
|
jotale,js76x8-32m|\
|
|
skylab,skw92a|\
|
|
totolink,lr1200)
|
|
wan_mac=$(mtd_get_mac_binary factory 0x2e)
|
|
;;
|
|
linksys,e5400)
|
|
wan_mac=$(mtd_get_mac_binary factory 0x22)
|
|
;;
|
|
mercury,mac1200r-v2)
|
|
wan_mac=$(macaddr_add "$(mtd_get_mac_binary factory_info 0xd)" 1)
|
|
;;
|
|
motorola,mwr03)
|
|
label_mac=$(mtd_get_mac_binary factory 0x4)
|
|
wan_mac=$(macaddr_add "$label_mac" 2)
|
|
;;
|
|
onion,omega2|\
|
|
onion,omega2p|\
|
|
vocore,vocore2|\
|
|
vocore,vocore2-lite|\
|
|
wavlink,wl-wn576a2)
|
|
label_mac=$(mtd_get_mac_binary factory 0x4)
|
|
;;
|
|
rakwireless,rak633|\
|
|
unielec,u7628-01-16m|\
|
|
wavlink,wl-wn575a3)
|
|
wan_mac=$(macaddr_add "$(mtd_get_mac_binary factory 0x28)" 1)
|
|
;;
|
|
tplink,archer-c20-v4|\
|
|
tplink,archer-c50-v3|\
|
|
tplink,tl-mr3420-v5|\
|
|
tplink,tl-wr840n-v4|\
|
|
tplink,tl-wr840n-v5|\
|
|
tplink,tl-wr841n-v13|\
|
|
tplink,tl-wr841n-v14|\
|
|
tplink,tl-wr842n-v5|\
|
|
tplink,tl-wr850n-v2)
|
|
wan_mac=$(macaddr_add "$(mtd_get_mac_binary factory 0xf100)" 1)
|
|
;;
|
|
tplink,archer-c20-v5|\
|
|
tplink,archer-c50-v4)
|
|
wan_mac=$(macaddr_add "$(mtd_get_mac_binary rom 0xf100)" 1)
|
|
;;
|
|
wavlink,wl-wn570ha1|\
|
|
zbtlink,zbt-we1226)
|
|
wan_mac=$(macaddr_add "$(mtd_get_mac_binary factory 0x2e)" 1)
|
|
;;
|
|
wiznet,wizfi630s)
|
|
label_mac=$(mtd_get_mac_binary factory 0x4)
|
|
wan_mac=$(mtd_get_mac_binary factory 0x28)
|
|
;;
|
|
xiaomi,mi-router-4a-100m|\
|
|
xiaomi,mi-router-4a-100m-intl|\
|
|
xiaomi,mi-router-4c)
|
|
wan_mac=$(mtd_get_mac_binary factory 0x4)
|
|
;;
|
|
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
|