[openwrt/openwrt] ath79: add support for Yuncore XD3200
LEDE Commits
lede-commits at lists.infradead.org
Thu Apr 14 22:11:45 PDT 2022
ynezz pushed a commit to openwrt/openwrt.git, branch master:
https://git.openwrt.org/c91df224f54fdd44c9c0487a8c91876f5d273164
commit c91df224f54fdd44c9c0487a8c91876f5d273164
Author: Thibaut VARÈNE <hacks at slashdirt.org>
AuthorDate: Thu Apr 14 12:39:03 2022 +0200
ath79: add support for Yuncore XD3200
Specification:
- QCA9563 (775MHz), 128MB RAM, 16MB SPI NOR
- 2T2R 802.11b/g/n 2.4GHz
- 2T2R 802.11n/ac 5GHz
- 2x 10/100/1000 Mbps Ethernet, with 802.3at PoE support (WAN port)
LED for 5 GHz WLAN is currently not supported as it is connected directly
to the QCA9882 radio chip.
Flash instructions:
If your device comes with generic QSDK based firmware, you can login
over telnet (login: root, empty password, default IP: 192.168.188.253),
issue first (important!) 'fw_setenv' command and then perform regular
upgrade, using 'sysupgrade -n -F ...' (you can use 'wget' to download
image to the device, SSH server is not available):
fw_setenv bootcmd "bootm 0x9f050000 || bootm 0x9fe80000"
sysupgrade -n -F openwrt-...-yuncore_...-squashfs-sysupgrade.bin
In case your device runs firmware with YunCore custom GUI, you can use
U-Boot recovery mode:
1. Set a static IP 192.168.0.141/24 on PC and start TFTP server with
'tftp' image renamed to 'upgrade.bin'
2. Power the device with reset button pressed and release it after 5-7
seconds, recovery mode should start downloading image from server
(unfortunately, there is no visible indication that recovery got
enabled - in case of problems check TFTP server logs)
Signed-off-by: Thibaut VARÈNE <hacks at slashdirt.org>
---
package/boot/uboot-envtools/files/ath79 | 1 +
target/linux/ath79/dts/qca9563_yuncore_xd3200.dts | 32 ++++++++++++++++++++++
.../ath79/generic/base-files/etc/board.d/01_leds | 3 +-
.../generic/base-files/etc/board.d/02_network | 1 +
.../etc/hotplug.d/firmware/11-ath10k-caldata | 3 +-
target/linux/ath79/image/generic.mk | 11 ++++++++
6 files changed, 49 insertions(+), 2 deletions(-)
diff --git a/package/boot/uboot-envtools/files/ath79 b/package/boot/uboot-envtools/files/ath79
index 230f2fe417..ace5cab30f 100644
--- a/package/boot/uboot-envtools/files/ath79
+++ b/package/boot/uboot-envtools/files/ath79
@@ -69,6 +69,7 @@ samsung,wam250|\
ubnt,nanostation-m|\
yuncore,a770|\
yuncore,a782|\
+yuncore,xd3200|\
yuncore,xd4200|\
ziking,cpe46b|\
zyxel,nbg6616)
diff --git a/target/linux/ath79/dts/qca9563_yuncore_xd3200.dts b/target/linux/ath79/dts/qca9563_yuncore_xd3200.dts
new file mode 100644
index 0000000000..5c87752585
--- /dev/null
+++ b/target/linux/ath79/dts/qca9563_yuncore_xd3200.dts
@@ -0,0 +1,32 @@
+// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
+
+#include "qca9563_yuncore_xd4200.dtsi"
+
+/ {
+ compatible = "yuncore,xd3200", "qca,qca9563";
+ model = "YunCore XD3200";
+
+ aliases {
+ label-mac-device = ð0;
+ led-boot = &led_system;
+ led-failsafe = &led_system;
+ led-running = &led_system;
+ led-upgrade = &led_system;
+ };
+
+ leds {
+ compatible = "gpio-leds";
+
+ led_system: system {
+ label = "green:system";
+ gpios = <&gpio 1 GPIO_ACTIVE_LOW>;
+ default-state = "keep";
+ };
+
+ wlan2g {
+ label = "blue:wlan2g";
+ gpios = <&gpio 19 GPIO_ACTIVE_LOW>;
+ linux,default-trigger = "phy1tpt";
+ };
+ };
+};
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 e22cee51a3..12a54f3bd5 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
@@ -246,7 +246,8 @@ glinet,gl-x750)
hak5,lan-turtle)
ucidef_set_led_netdev "wan" "WAN" "orange:system" "eth1"
;;
-joyit,jt-or750i)
+joyit,jt-or750i|\
+yuncore,xd3200)
ucidef_set_led_default "ath10k" "ath10k-disable" "ath10k-phy0" "0"
;;
meraki,mr12|\
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 2f0208b288..03e6434422 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
@@ -365,6 +365,7 @@ ath79_setup_interfaces()
ubnt,nanobeam-ac-gen2|\
ubnt,nanostation-ac|\
yuncore,a782|\
+ yuncore,xd3200|\
yuncore,xd4200)
ucidef_add_switch "switch0" \
"0 at eth0" "2:lan" "3:wan"
diff --git a/target/linux/ath79/generic/base-files/etc/hotplug.d/firmware/11-ath10k-caldata b/target/linux/ath79/generic/base-files/etc/hotplug.d/firmware/11-ath10k-caldata
index 348b8839b6..17121d9618 100644
--- a/target/linux/ath79/generic/base-files/etc/hotplug.d/firmware/11-ath10k-caldata
+++ b/target/linux/ath79/generic/base-files/etc/hotplug.d/firmware/11-ath10k-caldata
@@ -46,7 +46,8 @@ case "$FIRMWARE" in
ubnt,powerbeam-5ac-gen2|\
ubnt,rocket-5ac-lite|\
ubnt,unifiac-pro|\
- yuncore,a770)
+ yuncore,a770|\
+ yuncore,xd3200)
caldata_extract "art" 0x5000 0x844
;;
avm,fritz1750e|\
diff --git a/target/linux/ath79/image/generic.mk b/target/linux/ath79/image/generic.mk
index 769c0ee1da..33a72358b3 100644
--- a/target/linux/ath79/image/generic.mk
+++ b/target/linux/ath79/image/generic.mk
@@ -2528,6 +2528,17 @@ define Device/yuncore_a782
endef
TARGET_DEVICES += yuncore_a782
+define Device/yuncore_xd3200
+ SOC := qca9563
+ DEVICE_VENDOR := YunCore
+ DEVICE_MODEL := XD3200
+ DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca988x-ct
+ IMAGE_SIZE := 16000k
+ IMAGES += tftp.bin
+ IMAGE/tftp.bin := $$(IMAGE/sysupgrade.bin) | yuncore-tftp-header-16m
+endef
+TARGET_DEVICES += yuncore_xd3200
+
define Device/yuncore_xd4200
SOC := qca9563
DEVICE_VENDOR := YunCore
More information about the lede-commits
mailing list