realtek: move hpe_1920 recipe to common.mk
[openwrt/staging/nbd.git] / target / linux / realtek / image / Makefile
1 # SPDX-License-Identifier: GPL-2.0-only
2
3 include $(TOPDIR)/rules.mk
4 include $(INCLUDE_DIR)/image.mk
5
6 KERNEL_LOADADDR = 0x80000000
7 KERNEL_ENTRY = 0x80000400
8
9 DEVICE_VARS += ZYXEL_VERS DLINK_KERNEL_PART_SIZE
10 DEVICE_VARS += CAMEO_KERNEL_PART CAMEO_ROOTFS_PART CAMEO_CUSTOMER_SIGNATURE CAMEO_BOARD_VERSION
11 DEVICE_VARS += H3C_PRODUCT_ID H3C_DEVICE_ID
12
13 define Build/zyxel-vers
14 ( echo VERS;\
15 for hw in $(ZYXEL_VERS); do\
16 echo -n "V9.99($$hw.0) | ";\
17 date -d @$(SOURCE_DATE_EPOCH) +%m/%d/%Y;\
18 done ) >> $@
19 endef
20
21 define Build/dlink-cameo
22 $(SCRIPT_DIR)/cameo-tag.py $@ $(DLINK_KERNEL_PART_SIZE)
23 endef
24
25 define Build/dlink-version
26 echo -n "OpenWrt" >> $@
27 dd if=/dev/zero bs=25 count=1 >> $@
28 endef
29
30 define Build/dlink-headers
31 dd if=$@ bs=$(DLINK_KERNEL_PART_SIZE) count=1 of=$@.kernel_part; \
32 dd if=$@ bs=$(DLINK_KERNEL_PART_SIZE) skip=1 of=$@.rootfs_part; \
33 $(SCRIPT_DIR)/cameo-imghdr.py $@.kernel_part $@.kernel_part.hex \
34 "$(DEVICE_MODEL)" os $(CAMEO_KERNEL_PART) \
35 $(CAMEO_CUSTOMER_SIGNATURE) \
36 $(CAMEO_BOARD_VERSION) \
37 $(KERNEL_LOADADDR); \
38 $(SCRIPT_DIR)/cameo-imghdr.py $@.rootfs_part $@.rootfs_part.hex \
39 "$(DEVICE_MODEL)" squashfs $(CAMEO_ROOTFS_PART) \
40 $(CAMEO_CUSTOMER_SIGNATURE) \
41 $(CAMEO_BOARD_VERSION); \
42 cat $@.kernel_part.hex $@.rootfs_part.hex > $@
43 endef
44
45 define Build/7z
46 $(STAGING_DIR_HOST)/bin/7zr a $(@).new -t7z -m0=lzma $(@)
47 mv $@.new $@
48 endef
49
50 define Build/h3c-image
51 $(STAGING_DIR_HOST)/bin/mkh3cimg \
52 -i $(@) \
53 -o $(@).new \
54 -c 7z \
55 -p $(H3C_PRODUCT_ID) \
56 -d $(H3C_DEVICE_ID)
57 mv $@.new $@
58 endef
59
60 define Build/h3c-vfs
61 $(STAGING_DIR_HOST)/bin/mkh3cvfs \
62 -i $(@) \
63 -o $(@).new \
64 -f openwrt-kernel.bin
65 mv $@.new $@
66 endef
67
68 define Build/relocate-kernel
69 rm -rf $@.relocate
70 $(CP) ../../generic/image/relocate $@.relocate
71 $(MAKE) -j1 -C $@.relocate KERNEL_ADDR=$(KERNEL_LOADADDR) LZMA_TEXT_START=0x82000000 \
72 CROSS_COMPILE=$(TARGET_CROSS)
73 ( \
74 dd if=$@.relocate/loader.bin bs=32 conv=sync && \
75 perl -e '@s = stat("$@"); print pack("N", @s[7])' && \
76 cat "$@" \
77 ) > "$@.new"
78 mv "$@.new" "$@"
79 rm -rf $@.relocate
80 endef
81
82 define Device/Default
83 PROFILES = Default
84 KERNEL := kernel-bin | append-dtb | gzip | uImage gzip
85 KERNEL_INITRAMFS := kernel-bin | append-dtb | gzip | uImage gzip
86 DEVICE_DTS_DIR := ../dts-$(KERNEL_PATCHVER)
87 DEVICE_DTS = $$(SOC)_$(1)
88 IMAGES := sysupgrade.bin
89 IMAGE/sysupgrade.bin := append-kernel | pad-to 64k | append-rootfs | pad-rootfs | \
90 check-size | append-metadata
91 endef
92
93 # "NGE" refers to the uImage magic
94 define Device/netgear_nge
95 KERNEL := kernel-bin | append-dtb | lzma | uImage lzma
96 KERNEL_INITRAMFS := kernel-bin | append-dtb | lzma | uImage lzma
97 SOC := rtl8380
98 IMAGE_SIZE := 14848k
99 UIMAGE_MAGIC := 0x4e474520
100 DEVICE_VENDOR := NETGEAR
101 endef
102
103 include $(SUBTARGET).mk
104
105 $(eval $(call BuildImage))