realtek: Add generic zyxel_gs1900 image definition
[openwrt/staging/chunkeey.git] / target / linux / realtek / image / Makefile
index 4e9dbc350de63b8233e50726722bc42336a305fa..759653d4b53b29efb208f00f4b6d033aecf4d6d5 100644 (file)
@@ -1,24 +1,40 @@
-# This is free software, licensed under the GNU General Public License v2.
-# See /LICENSE for more information.
-#
+# SPDX-License-Identifier: GPL-2.0-only
+
 include $(TOPDIR)/rules.mk
 include $(INCLUDE_DIR)/image.mk
 
 KERNEL_LOADADDR = 0x80000000
 KERNEL_ENTRY = 0x80000400
 
+define Build/zyxel-vers
+       ( echo VERS;\
+       for hw in $(1); do\
+               echo -n "V9.99($$hw.0) | ";\
+               date -d @$(SOURCE_DATE_EPOCH) +%m/%d/%Y;\
+       done ) >> $@
+endef
+
 define Device/Default
   PROFILES = Default
   KERNEL := kernel-bin | append-dtb | gzip | uImage gzip
   KERNEL_INITRAMFS := kernel-bin | append-dtb | gzip | uImage gzip
   DEVICE_DTS_DIR := ../dts
   DEVICE_DTS = $$(SOC)_$(1)
-  SUPPORTED_DEVICES := $(subst _,$(comma),$(1))
   IMAGES := sysupgrade.bin
   IMAGE/sysupgrade.bin := append-kernel | pad-to 64k | append-rootfs | pad-rootfs | \
        append-metadata | check-size
 endef
 
+# "NGE" refers to the uImage magic
+define Device/netgear_nge
+  KERNEL := kernel-bin | append-dtb | lzma | uImage lzma
+  KERNEL_INITRAMFS := kernel-bin | append-dtb | lzma | uImage lzma
+  SOC := rtl8380
+  IMAGE_SIZE := 14848k
+  UIMAGE_MAGIC := 0x4e474520
+  DEVICE_VENDOR := NETGEAR
+endef
+
 define Device/allnet_all-sg8208m
   SOC := rtl8382
   IMAGE_SIZE := 7168k
@@ -26,7 +42,6 @@ define Device/allnet_all-sg8208m
   DEVICE_MODEL := ALL-SG8208M
   UIMAGE_MAGIC := 0x00000006
   UIMAGE_NAME := 2.2.2.0
-  DEVICE_PACKAGES := ip-full ip-bridge kmod-gpio-button-hotplug tc
 endef
 TARGET_DEVICES += allnet_all-sg8208m
 
@@ -34,7 +49,6 @@ define Device/d-link_dgs-1210
   SOC := rtl8382
   IMAGE_SIZE := 13824k
   DEVICE_VENDOR := D-Link
-  DEVICE_PACKAGES := ip-full ip-bridge ethtool tc
 endef
 
 define Device/d-link_dgs-1210-10p
@@ -56,16 +70,52 @@ define Device/d-link_dgs-1210-28
 endef
 TARGET_DEVICES += d-link_dgs-1210-28
 
+define Device/netgear_gs108t-v3
+  $(Device/netgear_nge)
+  DEVICE_MODEL := GS108T
+  DEVICE_VARIANT := v3
+endef
+TARGET_DEVICES += netgear_gs108t-v3
+
 define Device/netgear_gs110tpp-v1
-  $(Device/Default)
-  SOC := rtl8380
-  IMAGE_SIZE := 14848k
-  UIMAGE_MAGIC := 0x4e474520
-  DEVICE_VENDOR := NETGEAR
-  DEVICE_MODEL := GS110TP
+  $(Device/netgear_nge)
+  DEVICE_MODEL := GS110TPP
   DEVICE_VARIANT := v1
-  DEVICE_PACKAGES := ip-full ip-bridge ethtool tc
 endef
 TARGET_DEVICES += netgear_gs110tpp-v1
 
+define Device/zyxel_gs1900
+  SOC := rtl8380
+  IMAGE_SIZE := 6976k
+  DEVICE_VENDOR := ZyXEL
+  UIMAGE_MAGIC := 0x83800000
+  KERNEL_INITRAMFS := kernel-bin | append-dtb | gzip | zyxel-vers $$$$(ZYXEL_VERS) | \
+       uImage gzip
+endef
+
+define Device/zyxel_gs1900-10hp
+  $(Device/zyxel_gs1900)
+  DEVICE_MODEL := GS1900-10HP
+  ZYXEL_VERS := AAZI
+endef
+TARGET_DEVICES += zyxel_gs1900-10hp
+
+define Device/zyxel_gs1900-8hp-v1
+  $(Device/zyxel_gs1900)
+  DEVICE_MODEL := GS1900-8HP
+  DEVICE_VARIANT := v1
+  ZYXEL_VERS := AAHI
+  DEVICE_PACKAGES += lua-rs232
+endef
+TARGET_DEVICES += zyxel_gs1900-8hp-v1
+
+define Device/zyxel_gs1900-8hp-v2
+  $(Device/zyxel_gs1900)
+  DEVICE_MODEL := GS1900-8HP
+  DEVICE_VARIANT := v2
+  ZYXEL_VERS := AAHI
+  DEVICE_PACKAGES += lua-rs232
+endef
+TARGET_DEVICES += zyxel_gs1900-8hp-v2
+
 $(eval $(call BuildImage))