realtek: rename cameo specific names in "Build/*" definitions
[openwrt/openwrt.git] / target / linux / realtek / image / Makefile
index 4e9dbc350de63b8233e50726722bc42336a305fa..f50821d24ae7d14f07f64befd7f3f31544279357 100644 (file)
@@ -1,71 +1,99 @@
-# 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
+KERNEL_LOADADDR = 0x80100000
 
-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
+DEVICE_VARS += \
+        CAMEO_BOARD_VERSION \
+        CAMEO_CUSTOMER_SIGNATURE \
+        CAMEO_KERNEL_PART \
+        CAMEO_KERNEL_PART_SIZE \
+        CAMEO_ROOTFS_PART \
+        H3C_DEVICE_ID \
+        H3C_PRODUCT_ID \
+        ZYXEL_VERS
+
+define Build/zyxel-vers
+       ( echo VERS;\
+       for hw in $(ZYXEL_VERS); do\
+               echo -n "V9.99($$hw.0) | ";\
+               date -d @$(SOURCE_DATE_EPOCH) +%m/%d/%Y;\
+       done ) >> $@
 endef
 
-define Device/allnet_all-sg8208m
-  SOC := rtl8382
-  IMAGE_SIZE := 7168k
-  DEVICE_VENDOR := ALLNET
-  DEVICE_MODEL := ALL-SG8208M
-  UIMAGE_MAGIC := 0x00000006
-  UIMAGE_NAME := 2.2.2.0
-  DEVICE_PACKAGES := ip-full ip-bridge kmod-gpio-button-hotplug tc
+define Build/cameo-tag
+       $(SCRIPT_DIR)/cameo-tag.py $@ $(CAMEO_KERNEL_PART_SIZE)
 endef
-TARGET_DEVICES += allnet_all-sg8208m
 
-define Device/d-link_dgs-1210
-  SOC := rtl8382
-  IMAGE_SIZE := 13824k
-  DEVICE_VENDOR := D-Link
-  DEVICE_PACKAGES := ip-full ip-bridge ethtool tc
+define Build/cameo-version
+       echo -n "OpenWrt" >> $@
+       dd if=/dev/zero bs=25 count=1 >> $@
 endef
 
-define Device/d-link_dgs-1210-10p
-  $(Device/d-link_dgs-1210)
-  DEVICE_MODEL := DGS-1210-10P
-  DEVICE_PACKAGES += lua-rs232
+define Build/cameo-headers
+        dd if=$@ bs=$(CAMEO_KERNEL_PART_SIZE) count=1 of=$@.kernel_part; \
+        dd if=$@ bs=$(CAMEO_KERNEL_PART_SIZE) skip=1 of=$@.rootfs_part; \
+        $(SCRIPT_DIR)/cameo-imghdr.py $@.kernel_part $@.kernel_part.hex \
+                "$(DEVICE_MODEL)" os $(CAMEO_KERNEL_PART) \
+                $(CAMEO_CUSTOMER_SIGNATURE) \
+                $(CAMEO_BOARD_VERSION) \
+                $(KERNEL_LOADADDR); \
+        $(SCRIPT_DIR)/cameo-imghdr.py $@.rootfs_part $@.rootfs_part.hex \
+                "$(DEVICE_MODEL)" squashfs $(CAMEO_ROOTFS_PART) \
+                $(CAMEO_CUSTOMER_SIGNATURE) \
+                $(CAMEO_BOARD_VERSION); \
+        cat $@.kernel_part.hex $@.rootfs_part.hex > $@
 endef
-TARGET_DEVICES += d-link_dgs-1210-10p
 
-define Device/d-link_dgs-1210-16
-  $(Device/d-link_dgs-1210)
-  DEVICE_MODEL := DGS-1210-16
+define Build/7z
+       $(STAGING_DIR_HOST)/bin/7zr a $(@).new -t7z -m0=lzma $(@)
+       mv $@.new $@
 endef
-TARGET_DEVICES += d-link_dgs-1210-16
 
-define Device/d-link_dgs-1210-28
-  $(Device/d-link_dgs-1210)
-  DEVICE_MODEL := DGS-1210-28
+define Build/h3c-image
+       $(STAGING_DIR_HOST)/bin/mkh3cimg \
+               -i $(@) \
+               -o $(@).new \
+               -c 7z \
+               -p $(H3C_PRODUCT_ID) \
+               -d $(H3C_DEVICE_ID)
+       mv $@.new $@
 endef
-TARGET_DEVICES += d-link_dgs-1210-28
 
-define Device/netgear_gs110tpp-v1
-  $(Device/Default)
-  SOC := rtl8380
-  IMAGE_SIZE := 14848k
-  UIMAGE_MAGIC := 0x4e474520
-  DEVICE_VENDOR := NETGEAR
-  DEVICE_MODEL := GS110TP
-  DEVICE_VARIANT := v1
-  DEVICE_PACKAGES := ip-full ip-bridge ethtool tc
+define Build/h3c-vfs
+       $(STAGING_DIR_HOST)/bin/mkh3cvfs \
+               -i $(@) \
+               -o $(@).new \
+               -f openwrt-kernel.bin
+       mv $@.new $@
 endef
-TARGET_DEVICES += netgear_gs110tpp-v1
+
+define Device/Default
+  PROFILES = Default
+  KERNEL := \
+       kernel-bin | \
+       append-dtb | \
+       libdeflate-gzip | \
+       uImage gzip
+  KERNEL_INITRAMFS := \
+       kernel-bin | \
+       append-dtb | \
+       libdeflate-gzip | \
+       uImage gzip
+  DEVICE_DTS_DIR := ../dts-$(KERNEL_PATCHVER)
+  DEVICE_DTS = $$(SOC)_$(1)
+  IMAGES := sysupgrade.bin
+  IMAGE/sysupgrade.bin := \
+       append-kernel | \
+       pad-to 64k | \
+       append-rootfs | \
+       pad-rootfs | \
+       check-size | \
+       append-metadata
+endef
+
+include $(SUBTARGET).mk
 
 $(eval $(call BuildImage))