1 # Copyright (c) 2014 The Linux Foundation. All rights reserved.
3 include $(TOPDIR
)/rules.mk
4 include $(INCLUDE_DIR
)/image.mk
6 UBIFS_OPTS
= -m
2048 -e
124KiB
-c
4096 -U
-F
8 KERNEL_LOADADDR
:= 0x42208000
11 $(CP
) $(LINUX_DIR
)/vmlinux
$(KDIR
)/$(IMG_PREFIX
)-vmlinux.elf
12 mkimage
-A arm
-O linux
-T filesystem
-C none \
13 -a
$(KERNEL_LOADADDR
) -e
$(KERNEL_LOADADDR
) \
14 -n
'ARM OpenWrt fakeroot' \
15 -s
$(KDIR_TMP
)/root.dummy-uImage.tmp
16 echo
-ne
'\xff' > $(KDIR_TMP
)/root.dummy
17 cat
$(KDIR_TMP
)/root.dummy
$(KDIR_TMP
)/root.dummy-uImage.tmp
> $(KDIR
)/root.dummy
20 define Image
/BuildKernel
21 $(CP
) $(KDIR
)/$(IMG_PREFIX
)-vmlinux.elf
$(BIN_DIR
)
24 define Image
/Build
/squashfs
25 cp
$(KDIR
)/root.squashfs
$(KDIR
)/root.squashfs-raw
26 $(call prepare_generic_squashfs
,$(KDIR
)/root.squashfs
)
30 $(call Image
/Build
/$(1),$(1))
31 dd if
=$(KDIR
)/root.
$(1) of
=$(BIN_DIR
)/$(IMG_PREFIX
)-$(1)-root.img bs
=2k conv
=sync
34 define Build
/append-file
40 KERNEL_DEPENDS
= $$(wildcard $(DTS_DIR
)/$$(DEVICE_DTS
).dts
)
41 KERNEL_INITRAMFS_PREFIX
:= $$(IMG_PREFIX
)-$(1)-initramfs
42 KERNEL_PREFIX
:= $$(IMAGE_PREFIX
)
43 SUPPORTED_DEVICES
= $$(BOARD_NAME
)
44 IMAGE
/sysupgrade.
tar = sysupgrade-tar | append-metadata
47 define Device
/LegacyImage
48 KERNEL_SUFFIX
:= -uImage
49 KERNEL
= kernel-bin | append-dtb | uImage none
53 define Device
/FitImage
54 KERNEL_SUFFIX
:= -fit-uImage.itb
55 KERNEL
= kernel-bin | gzip | fit gzip
$$(DTS_DIR
)/$$(DEVICE_DTS
).dtb
61 IMAGES
:= nand-factory.ubi nand-sysupgrade.
tar
62 IMAGE
/nand-factory.ubi
:= append-ubi
63 IMAGE
/nand-sysupgrade.
tar := sysupgrade-tar | append-metadata
66 define Device
/DniImage
67 PROFILES
+= $$(DEVICE_NAME
)
68 FILESYSTEMS
:= squashfs
69 KERNEL_SUFFIX
:= -uImage
70 KERNEL_INITRAMFS
:= kernel-bin | append-dtb | uImage none
71 KERNEL
= kernel-bin | append-dtb | pad-to
$$$$(($$(KERNEL_SIZE
)-2*64-1)) | uImage none | append-file
$(KDIR
)/root.dummy
76 IMAGES
:= factory.img sysupgrade.
tar
77 IMAGE
/factory.img
:= append-kernel | append-ubi | netgear-dni
79 DEVICE_VARS
+= NETGEAR_BOARD_ID NETGEAR_HW_ID
81 define Device
/TpSafeImage
82 PROFILES
+= $$(DEVICE_NAME
)
83 FILESYSTEMS
:= squashfs
84 KERNEL_SUFFIX
:= -uImage
85 KERNEL
= kernel-bin | append-dtb | uImage none
88 IMAGES
:= factory.bin sysupgrade.bin
89 IMAGE
/factory.bin
:= append-rootfs | tplink-safeloader factory
90 IMAGE
/sysupgrade.bin
:= append-rootfs | tplink-safeloader sysupgrade | append-metadata
92 DEVICE_VARS
+= TPLINK_BOARD_NAME
94 define Device
/ZyXELImage
95 PROFILES
+= $$(DEVICE_NAME
)
96 FILESYSTEMS
:= squashfs
97 KERNEL_SUFFIX
:= -uImage
98 KERNEL
= kernel-bin | append-dtb | uImage none | pad-to
$${KERNEL_SIZE}
100 IMAGES
:= sysupgrade.
tar mmcblk0p5-rootfs.bin mmcblk0p4-kernel.bin
101 IMAGE
/sysupgrade.
tar/squashfs
:= append-rootfs | pad-to
$$$${BLOCKSIZE} | sysupgrade-tar rootfs
=$$$$@ | append-metadata
102 IMAGE
/mmcblk0p5-rootfs.bin
:= append-rootfs | pad-rootfs | pad-to
$$$${BLOCKSIZE}
103 IMAGE
/mmcblk0p4-kernel.bin
:= append-kernel
107 $(call Device
/FitImage
)
108 $(call Device
/UbiFit
)
109 DEVICE_DTS
:= qcom-ipq8064-ap148
113 DEVICE_TITLE
:= Qualcomm AP148
114 DEVICE_PACKAGES
:= ath10k-firmware-qca99x0
117 define Device
/AP148-legacy
118 $(call Device
/LegacyImage
)
119 $(call Device
/UbiFit
)
120 DEVICE_DTS
:= qcom-ipq8064-ap148
124 DEVICE_TITLE
:= Qualcomm AP148
(legacy
)
125 DEVICE_PACKAGES
:= ath10k-firmware-qca99x0
129 $(call Device
/TpSafeImage
)
130 DEVICE_DTS
:= qcom-ipq8064-c2600
134 TPLINK_BOARD_NAME
:= C2600
135 DEVICE_TITLE
:= TP-Link Archer C2600
136 DEVICE_PACKAGES
:= ath10k-firmware-qca99x0
140 $(call Device
/DniImage
)
141 DEVICE_DTS
:= qcom-ipq8064-d7800
142 KERNEL_SIZE
:= 2097152
143 NETGEAR_BOARD_ID
:= D7800
144 NETGEAR_HW_ID
:= 29764958+0+128+512+4x4
+4x4
148 DEVICE_TITLE
:= Netgear Nighthawk X4 D7800
149 DEVICE_PACKAGES
:= ath10k-firmware-qca99x0
153 $(call Device
/FitImage
)
154 DEVICE_DTS
:= qcom-ipq8064-db149
157 DEVICE_TITLE
:= Qualcomm DB149
158 DEVICE_PACKAGES
:= ath10k-firmware-qca99x0
162 $(call Device
/LegacyImage
)
163 DEVICE_DTS
:= qcom-ipq8064-ea8500
167 FILESYSTEMS
:= squashfs
168 KERNEL
= kernel-bin | append-dtb | uImage none | append-file
$(KDIR
)/root.dummy
169 PROFILES
+= $$(DEVICE_NAME
)
172 IMAGES
:= factory.bin sysupgrade.
tar
173 IMAGE
/factory.bin
:= append-kernel | pad-to
$$$${KERNEL_SIZE} | append-ubi
174 DEVICE_TITLE
:= Linksys EA8500
175 DEVICE_PACKAGES
:= ath10k-firmware-qca99x0
179 $(call Device
/DniImage
)
180 DEVICE_DTS
:= qcom-ipq8064-r7500
181 KERNEL_SIZE
:= 2097152
182 NETGEAR_BOARD_ID
:= R7500
183 NETGEAR_HW_ID
:= 29764841+0+128+256+3x3
+4x4
187 DEVICE_TITLE
:= Netgear Nighthawk X4 R7500
188 DEVICE_PACKAGES
:= ath10k-firmware-qca99x0
191 define Device
/R7500v2
192 $(call Device
/DniImage
)
193 DEVICE_DTS
:= qcom-ipq8064-r7500v2
194 KERNEL_SIZE
:= 2097152
195 NETGEAR_BOARD_ID
:= R7500v2
196 NETGEAR_HW_ID
:= 29764958+0+128+512+3x3
+4x4
199 BOARD_NAME
:= r7500v2
200 DEVICE_TITLE
:= Netgear Nighthawk X4 R7500v2
201 DEVICE_PACKAGES
:= ath10k-firmware-qca99x0
205 $(call Device
/DniImage
)
206 DEVICE_DTS
:= qcom-ipq8065-r7800
207 KERNEL_SIZE
:= 2097152
208 NETGEAR_BOARD_ID
:= R7800
209 NETGEAR_HW_ID
:= 29764958+0+128+512+4x4
+4x4
+cascade
213 DEVICE_TITLE
:= Netgear Nighthawk X4S R7800
214 DEVICE_PACKAGES
:= ath10k-firmware-qca9984
217 define Device
/NBG6817
218 DEVICE_DTS
:= qcom-ipq8065-nbg6817
221 BOARD_NAME
:= nbg6817
222 DEVICE_TITLE
:= ZyXEL NBG6817
223 DEVICE_PACKAGES
:= ath10k-firmware-qca9984 e2fsprogs losetup
224 $(call Device
/ZyXELImage
)
227 define Device
/VR2600v
228 PROFILES
+= $$(DEVICE_NAME
)
229 FILESYSTEMS
:= squashfs
230 KERNEL_SUFFIX
:= -uImage
231 KERNEL
= kernel-bin | append-dtb | uImage none
232 KERNEL_NAME
:= zImage
233 KERNEL_SIZE
:= 2097152
234 DEVICE_DTS
:= qcom-ipq8064-vr2600v
237 BOARD_NAME
:= vr2600v
238 DEVICE_TITLE
:= TP-Link Archer VR2600v
239 DEVICE_PACKAGES
:= ath10k-firmware-qca99x0
240 IMAGES
:= sysupgrade.bin
241 IMAGE
/sysupgrade.bin
:= pad-extra
512 | append-kernel | pad-to
$$$${KERNEL_SIZE} | append-rootfs | pad-rootfs | append-metadata
244 TARGET_DEVICES
+= AP148 AP148-legacy C2600 D7800 DB149 EA8500 R7500 R7500v2 R7800 NBG6817 VR2600v
246 $(eval
$(call BuildImage
))