summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAhmed Naseef2025-12-30 08:24:43 +0000
committerHauke Mehrtens2026-02-15 00:12:52 +0000
commit8440e79c9f051ebd30773a9e421525d8395ec4cd (patch)
tree0354ab187229f9efc181e1fa2665f69c8bed2d52
parent9ba87609b81fac6199129d80335a5f8798af3f17 (diff)
downloadopenwrt-8440e79c9f051ebd30773a9e421525d8395ec4cd.tar.gz
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@gmail.com> Link: https://github.com/openwrt/openwrt/pull/21326 Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
-rwxr-xr-xtarget/linux/econet/base-files/sbin/en75_chboot9
-rw-r--r--target/linux/econet/dts/en7528_dasan_h660gm-a.dts79
-rw-r--r--target/linux/econet/image/en7528.mk10
3 files changed, 98 insertions, 0 deletions
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@0 {
+ device_type = "memory";
+ reg = <0x00000000 0x10000000>;
+ };
+
+ chosen {
+ stdout-path = "/serial@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@0 {
+ label = "bootloader";
+ reg = <0x0 0x40000>;
+ read-only;
+ };
+
+ partition@40000 {
+ label = "dzs";
+ reg = <0x40000 0x40000>;
+ };
+
+ partition@80000 {
+ label = "tclinux";
+ reg = <0x80000 0x2000000>;
+ econet,enable-remap;
+ };
+
+ partition@480000 {
+ label = "rootfs";
+ reg = <0x480000 0x1c00000>;
+ linux,rootfs;
+ };
+
+ partition@2080000 {
+ label = "tclinux_slave";
+ reg = <0x2080000 0x2000000>;
+ };
+
+ partition@4080000 {
+ label = "romfile";
+ reg = <0x4080000 0x40000>;
+ };
+
+ partition@40c0000 {
+ label = "rwfs";
+ reg = <0x40c0000 0x2000000>;
+ };
+
+ partition@60c0000 {
+ label = "unknown";
+ reg = <0x60c0000 0x7d00000>;
+ };
+
+ partition@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