From d51e261e893451f9d0958a5ac39989d10b275e86 Mon Sep 17 00:00:00 2001 From: Andrew Cameron Date: Sun, 6 Nov 2022 14:43:37 +0000 Subject: [PATCH 1/1] ath79: add support for TP-Link CPE605-v1 TP-Link CPE605-v1 is an outdoor wireless CPE for 5 GHz with one Ethernet port based on Atheros AR9344 Specifications: - 560/450/225 MHz (CPU/DDR/AHB) - 1x 10/100 Mbps Ethernet - 64 MB of DDR2 RAM - 8 MB of SPI-NOR Flash - 23dBi high-gain directional antenna and a dedicated metal reflector - Power, LAN, WLAN5G green LEDs - 3x green RSSI LEDs Flashing instructions: Flash factory image through stock firmware WEB UI or through TFTP To get to TFTP recovery just hold reset button while powering on for around 4-5 seconds and release. Rename factory image to recovery.bin Stock TFTP server IP:192.168.0.100 Stock device TFTP adress:192.168.0.254 Signed-off-by: Andrew Cameron --- .../ath79/dts/ar9344_tplink_cpe605-v1.dts | 33 +++++++++++++++++++ .../generic/base-files/etc/board.d/01_leds | 1 + .../generic/base-files/etc/board.d/02_network | 1 + target/linux/ath79/image/generic-tp-link.mk | 10 ++++++ 4 files changed, 45 insertions(+) create mode 100644 target/linux/ath79/dts/ar9344_tplink_cpe605-v1.dts diff --git a/target/linux/ath79/dts/ar9344_tplink_cpe605-v1.dts b/target/linux/ath79/dts/ar9344_tplink_cpe605-v1.dts new file mode 100644 index 0000000000..0c6eee7ba6 --- /dev/null +++ b/target/linux/ath79/dts/ar9344_tplink_cpe605-v1.dts @@ -0,0 +1,33 @@ +// SPDX-License-Identifier: GPL-2.0-or-later OR MIT + +#include "ar9344_tplink_cpe.dtsi" + +/ { + model = "TP-Link CPE605 v1"; + compatible = "tplink,cpe605-v1", "qca,ar9344"; + + aliases { + led-boot = &led_lan; + led-failsafe = &led_lan; + led-upgrade = &led_lan; + }; + + leds { + compatible = "gpio-leds"; + + led_lan: lan { + label = "green:lan"; + gpios = <&gpio 11 GPIO_ACTIVE_LOW>; + }; + + wlan5g { + label = "green:wlan5g"; + gpios = <&gpio 13 GPIO_ACTIVE_LOW>; + linux,default-trigger = "phy0tpt"; + }; + }; +}; + +ð1 { + compatible = "syscon", "simple-mfd"; +}; diff --git a/target/linux/ath79/generic/base-files/etc/board.d/01_leds b/target/linux/ath79/generic/base-files/etc/board.d/01_leds index 606a194f7e..54d764f907 100644 --- a/target/linux/ath79/generic/base-files/etc/board.d/01_leds +++ b/target/linux/ath79/generic/base-files/etc/board.d/01_leds @@ -18,6 +18,7 @@ glinet,6416|\ glinet,gl-ar300m-lite|\ glinet,gl-ar300m16|\ pcs,cap324|\ +tplink,cpe605-v1|\ tplink,cpe610-v1|\ tplink,cpe610-v2|\ tplink,tl-wa1201-v2) diff --git a/target/linux/ath79/generic/base-files/etc/board.d/02_network b/target/linux/ath79/generic/base-files/etc/board.d/02_network index e47f66c2f2..2fa0487981 100644 --- a/target/linux/ath79/generic/base-files/etc/board.d/02_network +++ b/target/linux/ath79/generic/base-files/etc/board.d/02_network @@ -76,6 +76,7 @@ ath79_setup_interfaces() tplink,cpe210-v3|\ tplink,cpe510-v2|\ tplink,cpe510-v3|\ + tplink,cpe605-v1|\ tplink,cpe610-v1|\ tplink,cpe610-v2|\ tplink,cpe710-v1|\ diff --git a/target/linux/ath79/image/generic-tp-link.mk b/target/linux/ath79/image/generic-tp-link.mk index 598085e50b..314ece1e03 100644 --- a/target/linux/ath79/image/generic-tp-link.mk +++ b/target/linux/ath79/image/generic-tp-link.mk @@ -350,6 +350,16 @@ define Device/tplink_cpe510-v3 endef TARGET_DEVICES += tplink_cpe510-v3 +define Device/tplink_cpe605-v1 + $(Device/tplink-safeloader-okli) + SOC := ar9344 + IMAGE_SIZE := 7680k + DEVICE_MODEL := CPE605 + DEVICE_VARIANT := v1 + TPLINK_BOARD_ID := CPE605V1 +endef +TARGET_DEVICES += tplink_cpe605-v1 + define Device/tplink_cpe610-v1 $(Device/tplink-safeloader-okli) SOC := ar9344 -- 2.30.2 Index: openwrt/tools/firmware-utils/patches/0001-tplink-safeloader-add-TP-Link-CPE605-v1-Support.patch =================================================================== --- /dev/null +++ openwrt/tools/firmware-utils/patches/0001-tplink-safeloader-add-TP-Link-CPE605-v1-Support.patch @@ -0,0 +1,64 @@ +From 2b43d1376a6945d07b2a87e48e3645eaa4f24d5a Mon Sep 17 00:00:00 2001 +From: Andrew Cameron +Date: Wed, 9 Nov 2022 13:07:11 +0000 +Subject: [PATCH 1/1] tplink-safeloader: add TP-Link CPE605 v1 Support + +Enable creating images compatible with the TP-Link CPE605 v1 Router + +Signed-off-by: Andrew Cameron +--- + src/tplink-safeloader.c | 38 ++++++++++++++++++++++++++++++++++++++ + 1 file changed, 38 insertions(+) + +diff --git a/src/tplink-safeloader.c b/src/tplink-safeloader.c +index 7f9081d..b920191 100644 +--- a/src/tplink-safeloader.c ++++ b/src/tplink-safeloader.c +@@ -468,6 +468,44 @@ static struct device_info boards[] = { + .last_sysupgrade_partition = "support-list", + }, + ++ /** Firmware layout for the CPE605V1 */ ++ { ++ .id = "CPE605V1", ++ .vendor = "CPE605(TP-LINK|UN|N150-5):1.0\r\n", ++ .support_list = ++ "SupportList:\r\n" ++ "CPE605(TP-LINK|UN|N150-5|00000000):1.0\r\n" ++ "CPE605(TP-LINK|EU|N150-5|45550000):1.0\r\n" ++ "CPE605(TP-LINK|US|N150-5|55530000):1.0\r\n" ++ "CPE605(TP-LINK|UN|N150-5):1.0\r\n" ++ "CPE605(TP-LINK|EU|N150-5):1.0\r\n" ++ "CPE605(TP-LINK|US|N150-5):1.0\r\n", ++ .part_trail = 0xff, ++ .soft_ver = SOFT_VER_DEFAULT, ++ ++ .partitions = { ++ {"fs-uboot", 0x00000, 0x20000}, ++ {"partition-table", 0x20000, 0x02000}, ++ {"default-mac", 0x30000, 0x00020}, ++ {"serial-number", 0x30100, 0x00020}, ++ {"product-info", 0x31100, 0x00100}, ++ {"device-info", 0x31400, 0x00400}, ++ {"signature", 0x32000, 0x00400}, ++ {"device-id", 0x33000, 0x00100}, ++ {"firmware", 0x40000, 0x770000}, ++ {"soft-version", 0x7b0000, 0x00100}, ++ {"support-list", 0x7b1000, 0x01000}, ++ {"user-config", 0x7c0000, 0x10000}, ++ {"default-config", 0x7d0000, 0x10000}, ++ {"log", 0x7e0000, 0x10000}, ++ {"radio", 0x7f0000, 0x10000}, ++ {NULL, 0, 0} ++ }, ++ ++ .first_sysupgrade_partition = "os-image", ++ .last_sysupgrade_partition = "support-list", ++ }, ++ + /** Firmware layout for the CPE610V1 */ + { + .id = "CPE610V1", +-- +2.30.2 +