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
--- /dev/null
+// 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>;
+ };
+ };
+};
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