From: Sven Eckelmann <sven@narfation.org>
Date: Mon, 23 Nov 2020 12:41:34 +0000 (+0100)
Subject: ath79: Add support for Plasma Cloud PA300E
X-Git-Tag: v21.02.0-rc1~747
X-Git-Url: http://git.cdn.openwrt.org/?a=commitdiff_plain;h=17e592049005f3f7e65429966b21b2d834f9c2f0;p=openwrt%2Fstaging%2Fchunkeey.git

ath79: Add support for Plasma Cloud PA300E

Device specifications:

* Qualcomm/Atheros QCA9533 v2
* 650/600/217 MHz (CPU/DDR/AHB)
* 64 MB of RAM
* 16 MB of SPI NOR flash (mx25l12805d)
  - 2x 7 MB available; but one of the 7 MB regions is the recovery image
* 2x 10/100 Mbps Ethernet
* 2T2R 2.4 GHz Wi-Fi
* multi-color LED (controlled via red/green/blue GPIOs)
* 1x GPIO-button (reset)
* external h/w watchdog (enabled by default)
* TTL pins are on board (arrow points to VCC, then follows: GND, TX, RX)
* 2x fast ethernet
  - eth0
    + Label: Ethernet 1
    + 24V passive POE (mode B)
    + used as WAN interface
  - eth1
    + Label: Ethernet 2
    + 802.3af POE
    + builtin switch port 2
    + used as LAN interface
* 12-24V 1A DC
* external antennas

Flashing instructions:

The tool ap51-flash (https://github.com/ap51-flash/ap51-flash) should be
used to transfer the factory image to the u-boot when the device boots up.

Signed-off-by: Sven Eckelmann <sven@narfation.org>
---

diff --git a/package/boot/uboot-envtools/files/ath79 b/package/boot/uboot-envtools/files/ath79
index 40fbc96a07..496a27ceb2 100644
--- a/package/boot/uboot-envtools/files/ath79
+++ b/package/boot/uboot-envtools/files/ath79
@@ -81,7 +81,8 @@ netgear,wndr4300tn|\
 netgear,wndr4300sw)
 	ubootenv_add_uci_config "/dev/mtd1" "0x0" "0x40000" "0x20000"
 	;;
-plasmacloud,pa300)
+plasmacloud,pa300|\
+plasmacloud,pa300e)
 	ubootenv_add_uci_config "/dev/mtd1" "0x0" "0x40000" "0x40000"
 	;;
 qihoo,c301)
diff --git a/target/linux/ath79/dts/qca9533_plasmacloud_pa300e.dts b/target/linux/ath79/dts/qca9533_plasmacloud_pa300e.dts
new file mode 100644
index 0000000000..1527a796bb
--- /dev/null
+++ b/target/linux/ath79/dts/qca9533_plasmacloud_pa300e.dts
@@ -0,0 +1,8 @@
+// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
+
+#include "qca9533_plasmacloud_pa300.dtsi"
+
+/ {
+	compatible = "plasmacloud,pa300e", "qca,qca9533";
+	model = "Plasma Cloud PA300E";
+};
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 f868d8dc94..ac1fc4406d 100755
--- a/target/linux/ath79/generic/base-files/etc/board.d/02_network
+++ b/target/linux/ath79/generic/base-files/etc/board.d/02_network
@@ -150,6 +150,7 @@ ath79_setup_interfaces()
 	comfast,cf-e314n-v2|\
 	compex,wpj531-16m|\
 	plasmacloud,pa300|\
+	plasmacloud,pa300e|\
 	tplink,cpe210-v1|\
 	tplink,cpe220-v2|\
 	tplink,cpe220-v3|\
diff --git a/target/linux/ath79/generic/base-files/lib/upgrade/dualboot_datachk.sh b/target/linux/ath79/generic/base-files/lib/upgrade/dualboot_datachk.sh
index 68733ccf15..002f5f9668 100644
--- a/target/linux/ath79/generic/base-files/lib/upgrade/dualboot_datachk.sh
+++ b/target/linux/ath79/generic/base-files/lib/upgrade/dualboot_datachk.sh
@@ -45,7 +45,8 @@ platform_do_upgrade_dualboot_datachk() {
 	# boot anymore to Linux until it was reflashed with ap51-flash.
 	local next_boot_part="1"
 	case "$(board_name)" in
-	plasmacloud,pa300)
+	plasmacloud,pa300|\
+	plasmacloud,pa300e)
 		primary_kernel_mtd=3
 		;;
 	*)
diff --git a/target/linux/ath79/generic/base-files/lib/upgrade/platform.sh b/target/linux/ath79/generic/base-files/lib/upgrade/platform.sh
index 3ce273990f..98861685dc 100644
--- a/target/linux/ath79/generic/base-files/lib/upgrade/platform.sh
+++ b/target/linux/ath79/generic/base-files/lib/upgrade/platform.sh
@@ -50,7 +50,8 @@ platform_do_upgrade() {
 	jjplus,ja76pf2)
 		redboot_fis_do_upgrade "$1" linux
 		;;
-	plasmacloud,pa300)
+	plasmacloud,pa300|\
+	plasmacloud,pa300e)
 		PART_NAME="inactive"
 		platform_do_upgrade_dualboot_datachk "$1"
 		;;
diff --git a/target/linux/ath79/image/generic.mk b/target/linux/ath79/image/generic.mk
index 935dee75d7..037d572d97 100644
--- a/target/linux/ath79/image/generic.mk
+++ b/target/linux/ath79/image/generic.mk
@@ -1597,6 +1597,12 @@ define Device/plasmacloud_pa300
 endef
 TARGET_DEVICES += plasmacloud_pa300
 
+define Device/plasmacloud_pa300e
+  $(Device/plasmacloud_pa300-common)
+  DEVICE_MODEL := PA300E
+endef
+TARGET_DEVICES += plasmacloud_pa300e
+
 define Device/qihoo_c301
   $(Device/seama)
   SOC := ar9344