diff options
author | Sebastian Quilitz <zeraphim@x-pantion.de> | 2016-11-23 18:51:15 +0100 |
---|---|---|
committer | Mathias Kresin <dev@kresin.me> | 2016-11-24 22:37:40 +0100 |
commit | ae79c41286f0d9a97f2641450240ecac5465677d (patch) | |
tree | 03b5e25c4d5792e730add0a6a9ddf0e323e1f842 /target/linux/ipq806x/base-files | |
parent | 0e7869f20492a76fc1f331101fa01bfe9f02692f (diff) | |
download | upstream-ae79c41286f0d9a97f2641450240ecac5465677d.tar.gz upstream-ae79c41286f0d9a97f2641450240ecac5465677d.tar.bz2 upstream-ae79c41286f0d9a97f2641450240ecac5465677d.zip |
ipq806x: add support for TP-Link Archer VR2600v
This router is similar to the C2600. Ethernet on WAN + LAN, switch,
sysupgrade, LEDs, buttons and WiFi on 2G + 5G do work. The xDSL modem
and the POTS/DECT interface are not supported yet.
It is not possible to flash LEDE via the TP-Link webinterface. The
image need to be signed. The first 0x200 bytes of the image is the
TP-Link header including the signature. The signature is not validated
by the bootloader. The LEDE image is zeroed in this area.
To install LEDE it is necessary to solder a four pin header to JP2.
Connect a serial interface to this header and interrupt the autostart
of kernel. Transfer the sysupgrade image via TFTP and write it to the
serial flash at 0x320000.
Signed-off-by: Sebastian Quilitz <zeraphim@x-pantion.de>
Diffstat (limited to 'target/linux/ipq806x/base-files')
6 files changed, 26 insertions, 1 deletions
diff --git a/target/linux/ipq806x/base-files/etc/board.d/01_leds b/target/linux/ipq806x/base-files/etc/board.d/01_leds index e4dc820a5e..6570b783a4 100755 --- a/target/linux/ipq806x/base-files/etc/board.d/01_leds +++ b/target/linux/ipq806x/base-files/etc/board.d/01_leds @@ -45,6 +45,13 @@ nbg6817) ucidef_set_led_wlan "wlan5g" "WLAN5G" "$board:amber:wifi5" "phy0radio" ucidef_set_led_netdev "wan" "WAN" "$board:white:internet" "eth1" ;; +vr2600v) + ucidef_set_led_usbport "usb" "USB" "${board}:white:usb" "usb1-port1" "usb2-port1" "usb3-port1" "usb4-port1" + ucidef_set_led_switch "lan" "lan" "${board}:white:lan" "switch0" "0x1e" + ucidef_set_led_wlan "wlan2g" "WLAN2G" "${board}:white:wlan2g" "phy0radio" + ucidef_set_led_wlan "wlan5g" "WLAN5G" "${board}:white:wlan5g" "phy1radio" + ucidef_set_led_switch "wan" "wan" "${board}:white:wan" "switch0" "0x20" + ;; *) ;; esac diff --git a/target/linux/ipq806x/base-files/etc/board.d/02_network b/target/linux/ipq806x/base-files/etc/board.d/02_network index a461033dfe..8417f0e9b7 100755 --- a/target/linux/ipq806x/base-files/etc/board.d/02_network +++ b/target/linux/ipq806x/base-files/etc/board.d/02_network @@ -18,7 +18,8 @@ c2600 |\ d7800 |\ r7500 |\ r7500v2 |\ -r7800) +r7800 |\ +vr2600v) ucidef_add_switch "switch0" \ "1:lan" "2:lan" "3:lan" "4:lan" "6@eth1" "5:wan" "0@eth0" ;; diff --git a/target/linux/ipq806x/base-files/etc/hotplug.d/firmware/11-ath10k-caldata b/target/linux/ipq806x/base-files/etc/hotplug.d/firmware/11-ath10k-caldata index f95692a889..625f77f797 100644 --- a/target/linux/ipq806x/base-files/etc/hotplug.d/firmware/11-ath10k-caldata +++ b/target/linux/ipq806x/base-files/etc/hotplug.d/firmware/11-ath10k-caldata @@ -63,6 +63,9 @@ case "$FIRMWARE" in r7800) ath10kcal_extract "art" 4096 12064 ;; + vr2600v) + ath10kcal_extract "ART" 4096 12064 + ;; esac ;; "ath10k/cal-pci-0001:01:00.0.bin") @@ -82,6 +85,9 @@ case "$FIRMWARE" in r7800) ath10kcal_extract "art" 20480 12064 ;; + vr2600v) + ath10kcal_extract "ART" 20480 12064 + ;; esac ;; *) diff --git a/target/linux/ipq806x/base-files/etc/hotplug.d/ieee80211/10_fix_wifi_mac b/target/linux/ipq806x/base-files/etc/hotplug.d/ieee80211/10_fix_wifi_mac index 8a0579b747..3482a09b70 100644 --- a/target/linux/ipq806x/base-files/etc/hotplug.d/ieee80211/10_fix_wifi_mac +++ b/target/linux/ipq806x/base-files/etc/hotplug.d/ieee80211/10_fix_wifi_mac @@ -21,6 +21,9 @@ case "$board" in r7800) echo $(macaddr_add $(mtd_get_mac_binary art 6) $(($PHYNBR + 1)) ) > /sys${DEVPATH}/macaddress ;; + vr2600v) + echo $(macaddr_add $(mtd_get_mac_binary default-mac 0) $(($PHYNBR - 1)) ) > /sys${DEVPATH}/macaddress + ;; *) ;; esac diff --git a/target/linux/ipq806x/base-files/lib/ipq806x.sh b/target/linux/ipq806x/base-files/lib/ipq806x.sh index 1bd0e2bd94..a8b909ac04 100644 --- a/target/linux/ipq806x/base-files/lib/ipq806x.sh +++ b/target/linux/ipq806x/base-files/lib/ipq806x.sh @@ -41,6 +41,9 @@ ipq806x_board_detect() { *"R7800") name="r7800" ;; + *"VR2600v") + name="vr2600v" + ;; esac [ -z "$name" ] && name="unknown" diff --git a/target/linux/ipq806x/base-files/lib/upgrade/platform.sh b/target/linux/ipq806x/base-files/lib/upgrade/platform.sh index 250979dcf0..c3741f9ff2 100644 --- a/target/linux/ipq806x/base-files/lib/upgrade/platform.sh +++ b/target/linux/ipq806x/base-files/lib/upgrade/platform.sh @@ -37,6 +37,11 @@ platform_do_upgrade() { ea8500) platform_do_upgrade_linksys "$ARGV" ;; + vr2600v) + PART_NAME="kernel:rootfs" + MTD_CONFIG_ARGS="-s 0x200000" + default_do_upgrade "$ARGV" + ;; esac } |