[openwrt/openwrt] econet: en7528: add support for DASAN H660GM-A

LEDE Commits lede-commits at lists.infradead.org
Sat Feb 14 16:14:55 PST 2026


hauke pushed a commit to openwrt/openwrt.git, branch main:
https://git.openwrt.org/8440e79c9f051ebd30773a9e421525d8395ec4cd

commit 8440e79c9f051ebd30773a9e421525d8395ec4cd
Author: Ahmed Naseef <naseefkm at gmail.com>
AuthorDate: Tue Dec 30 12:24:43 2025 +0400

    econet: en7528: add support for DASAN H660GM-A
    
    DASAN H660GM-A is a GPON ONT.
    
    Specification:
    - SoC:      EcoNet EN7528
    - RAM:      256 MB
    - Flash:    256 MB SPI NAND
    - Ethernet: 4x 1GbE
    - FXS:      1 port
    - GPON:     1 port
    - USB:      1x USB 2.0
    
    Install via OEM web UI:
    1. Login to the factory web UI with username "superuser"
       and password "Dz$!A!r7".
    2. Rename the OpenWrt image
       openwrt-econet-en7528-dasan_h660gm-a-squashfs-tclinux.trx
       to G_ONU_openwrt.bin.
    3. Upload the renamed image via the firmware upgrade page
       at Maintenance > Firmware Upgrade in the factory web UI.
    
    Signed-off-by: Ahmed Naseef <naseefkm at gmail.com>
    Link: https://github.com/openwrt/openwrt/pull/21326
    Signed-off-by: Hauke Mehrtens <hauke at hauke-m.de>
---
 target/linux/econet/base-files/sbin/en75_chboot   |  9 +++
 target/linux/econet/dts/en7528_dasan_h660gm-a.dts | 79 +++++++++++++++++++++++
 target/linux/econet/image/en7528.mk               | 10 +++
 3 files changed, 98 insertions(+)

diff --git a/target/linux/econet/base-files/sbin/en75_chboot b/target/linux/econet/base-files/sbin/en75_chboot
index e6be66e582..27f2b2bad4 100755
--- a/target/linux/econet/base-files/sbin/en75_chboot
+++ b/target/linux/econet/base-files/sbin/en75_chboot
@@ -138,6 +138,15 @@ main() {
         code_openwrt=30
         code_factory=31
         ;;
+    dasan,h660gm-a)
+        # bootflag stored in dzs partition at offset 0x49
+        part=$(part_named '"dzs"')
+        offset_blocks=0
+        block_size=$((1024 * 128))
+        code_offset=73
+        code_openwrt=0000
+        code_factory=0101
+        ;;
     *)
         echo "Unsupported machine: $machine"
         exit 1
diff --git a/target/linux/econet/dts/en7528_dasan_h660gm-a.dts b/target/linux/econet/dts/en7528_dasan_h660gm-a.dts
new file mode 100644
index 0000000000..7614b71ada
--- /dev/null
+++ b/target/linux/econet/dts/en7528_dasan_h660gm-a.dts
@@ -0,0 +1,79 @@
+// SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+/dts-v1/;
+
+#include "en7528.dtsi"
+
+/ {
+	model = "DASAN H660GM-A";
+	compatible = "dasan,h660gm-a", "econet,en7528";
+
+	memory at 0 {
+		device_type = "memory";
+		reg = <0x00000000 0x10000000>;
+	};
+
+	chosen {
+		stdout-path = "/serial at 1fbf0000:115200";
+		linux,usable-memory-range = <0x00020000 0x0ffe0000>;
+	};
+};
+
+&nand {
+	status = "okay";
+	econet,bmt;
+	econet,bbt-table-size = <250>;
+
+	partitions {
+		compatible = "fixed-partitions";
+		#address-cells = <1>;
+		#size-cells = <1>;
+
+		partition at 0 {
+			label = "bootloader";
+			reg = <0x0 0x40000>;
+			read-only;
+		};
+
+		partition at 40000 {
+			label = "dzs";
+			reg = <0x40000 0x40000>;
+		};
+
+		partition at 80000 {
+			label = "tclinux";
+			reg = <0x80000 0x2000000>;
+			econet,enable-remap;
+		};
+
+		partition at 480000 {
+			label = "rootfs";
+			reg = <0x480000 0x1c00000>;
+			linux,rootfs;
+		};
+
+		partition at 2080000 {
+			label = "tclinux_slave";
+			reg = <0x2080000 0x2000000>;
+		};
+
+		partition at 4080000 {
+			label = "romfile";
+			reg = <0x4080000 0x40000>;
+		};
+
+		partition at 40c0000 {
+			label = "rwfs";
+			reg = <0x40c0000 0x2000000>;
+		};
+
+		partition at 60c0000 {
+			label = "unknown";
+			reg = <0x60c0000 0x7d00000>;
+		};
+
+		partition at ddc0000 {
+			label = "reservearea";
+			reg = <0xddc0000 0x240000>;
+		};
+	};
+};
diff --git a/target/linux/econet/image/en7528.mk b/target/linux/econet/image/en7528.mk
index 680d03b654..d718bfdb62 100644
--- a/target/linux/econet/image/en7528.mk
+++ b/target/linux/econet/image/en7528.mk
@@ -6,3 +6,13 @@ define Device/en7528_generic
   DEVICE_DTS := en7528_generic
 endef
 TARGET_DEVICES += en7528_generic
+
+define Device/dasan_h660gm-a
+  DEVICE_VENDOR := DASAN
+  DEVICE_MODEL := H660GM-A
+  DEVICE_DTS := en7528_dasan_h660gm-a
+  TRX_MODEL := Dewberry
+  IMAGES := tclinux.trx
+  IMAGE/tclinux.trx := append-kernel | lzma | tclinux-trx
+endef
+TARGET_DEVICES += dasan_h660gm-a




More information about the lede-commits mailing list