From 4ff8f2f77049e2e8b9938a0e73bb061f7cda3632 Mon Sep 17 00:00:00 2001
From: Sven Eckelmann <sven@narfation.org>
Date: Sun, 10 Oct 2021 17:30:24 +0200
Subject: [PATCH] ath79-generic: Add support for OpenMesh OM5P-AC v2

Device specifications:
======================

* Qualcomm/Atheros QCA9558 ver 1 rev 0
* 720/600/200 MHz (CPU/DDR/AHB)
* 128 MB of RAM
* 16 MB of SPI NOR flash
  - 2x 7 MB available; but one of the 7 MB regions is the recovery image
* 2T2R 2.4 GHz Wi-Fi (11n)
* 2T2R 5 GHz Wi-Fi (11ac)
* 4x GPIO-LEDs (3x wifi, 1x power)
* 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)
* TI tmp423 (package kmod-hwmon-tmp421) for temperature monitoring
* 2x ethernet
  - eth0
    + AR8035 ethernet PHY (RGMII)
    + 10/100/1000 Mbps Ethernet
    + 802.3af POE
    + used as LAN interface
  - eth1
    + AR8031 ethernet PHY (RGMII)
    + 10/100/1000 Mbps Ethernet
    + 18-24V passive POE (mode B)
    + used as WAN interface
* 12-24V 1A DC
* internal antennas

This device support is based on the partially working stub from commit
53c474abbdfe ("ath79: add new OF only target for QCA MIPS silicon").

Flashing instructions:
======================

Various methods can be used to install the actual image on the flash.
Two easy ones are:

ap51-flash
----------

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

initramfs from TFTP
-------------------

The serial console must be used to access the u-boot shell during bootup.
It can then be used to first boot up the initramfs image from a TFTP server
(here with the IP 192.168.1.21):

    setenv serverip 192.168.1.21
    setenv ipaddr 192.168.1.1
    tftpboot 0c00000 <filename-of-initramfs-kernel>.bin && bootm $fileaddr

The actual sysupgrade image can then be transferred (on the LAN port) to the
device via

    scp <filename-of-squashfs-sysupgrade>.bin root@192.168.1.1:/tmp/

On the device, the sysupgrade must then be started using

    sysupgrade -n /tmp/<filename-of-squashfs-sysupgrade>.bin

Gluon image name change
=======================

The device had the image name "openmesh-om5p-acv2" in older versions of Gluon.
This had to be changed with the new name in the device trees of the ath79
device tree.
---
 docs/user/supported_devices.rst | 2 +-
 targets/ath79-generic           | 7 +++++++
 2 files changed, 8 insertions(+), 1 deletion(-)

diff --git a/docs/user/supported_devices.rst b/docs/user/supported_devices.rst
index 919e70e95..6e78ff561 100644
--- a/docs/user/supported_devices.rst
+++ b/docs/user/supported_devices.rst
@@ -44,7 +44,7 @@ ath79-generic
   - OM2P-HS (v1, v2, v3, v4)
   - OM2P-LC
   - OM5P
-  - OM5P-AC (v1)
+  - OM5P-AC (v1, v2)
 
 * Plasma Cloud
 
diff --git a/targets/ath79-generic b/targets/ath79-generic
index 0c11bc8cb..5ca21e9fc 100644
--- a/targets/ath79-generic
+++ b/targets/ath79-generic
@@ -200,6 +200,13 @@ device('openmesh-om5p-ac-v1', 'openmesh_om5p-ac-v1', {
 	manifest_aliases = {'openmesh-om5p-ac'},
 })
 
+device('openmesh-om5p-ac-v2', 'openmesh_om5p-ac-v2', {
+	packages = ATH10K_PACKAGES_QCA9880,
+	factory = false,
+	-- old name from OpenWrt 19.07.x
+	manifest_aliases = {'openmesh-om5p-acv2'},
+})
+
 
 -- Plasma Cloud
 
-- 
GitLab