From eed91a9be6b0d9f628531b265f8ef9f1a93a7457 Mon Sep 17 00:00:00 2001
From: Sven Eckelmann <sven@narfation.org>
Date: Sun, 10 Oct 2021 17:25:20 +0200
Subject: [PATCH] ath79-generic: add support for OpenMesh OM2P-HS v3

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

* Qualcomm/Atheros AR9341 rev 1
* 535/400/200 MHz (CPU/DDR/AHB)
* 64 MB of RAM
* 16 MB of SPI NOR flash
  - 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
* 6x GPIO-LEDs (3x wifi, 2x ethernet, 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)
* 2x fast ethernet
  - eth0
    + 802.3af POE
    + builtin switch port 1
    + used as LAN interface
  - eth1
    + 18-24V passive POE (mode B)
    + used as WAN interface
* 12-24V 1A DC
* internal antennas

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-om2phsv3" 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           | 6 ++++++
 2 files changed, 7 insertions(+), 1 deletion(-)

diff --git a/docs/user/supported_devices.rst b/docs/user/supported_devices.rst
index 0d94215e2..fbfcf003e 100644
--- a/docs/user/supported_devices.rst
+++ b/docs/user/supported_devices.rst
@@ -41,7 +41,7 @@ ath79-generic
   - MR900 (v1, v2)
   - MR1750 (v1, v2)
   - OM2P (v1, v2, v4)
-  - OM2P-HS (v1, v2)
+  - OM2P-HS (v1, v2, v3)
 
 * Plasma Cloud
 
diff --git a/targets/ath79-generic b/targets/ath79-generic
index 4187e547b..d08913c56 100644
--- a/targets/ath79-generic
+++ b/targets/ath79-generic
@@ -173,6 +173,12 @@ device('openmesh-om2p-hs-v2', 'openmesh_om2p-hs-v2', {
 	manifest_aliases = {'openmesh-om2p-hsv2'},
 })
 
+device('openmesh-om2p-hs-v3', 'openmesh_om2p-hs-v3', {
+	factory = false,
+	-- old name from OpenWrt 19.07.x
+	manifest_aliases = {'openmesh-om2p-hsv3'},
+})
+
 
 -- Plasma Cloud
 
-- 
GitLab