5 DEVICE_VARS += TPLINK_BOARD_ID TPLINK_HEADER_VERSION TPLINK_HWID TPLINK_HWREV
7 define Build/ubnt-erx-factory-image
8 if [ -e $(KDIR)/tmp/$(KERNEL_INITRAMFS_IMAGE) -a "$$(stat -c%s $@)" -lt "$(KERNEL_SIZE)" ]; then \
9 echo '21001:6' > $(1).compat; \
10 $(TAR) -cf $(1) --transform='s/^.*/compat/' $(1).compat; \
12 $(TAR) -rf $(1) --transform='s/^.*/vmlinux.tmp/' $(KDIR)/tmp/$(KERNEL_INITRAMFS_IMAGE); \
13 mkhash md5 $(KDIR)/tmp/$(KERNEL_INITRAMFS_IMAGE) > $(1).md5; \
14 $(TAR) -rf $(1) --transform='s/^.*/vmlinux.tmp.md5/' $(1).md5; \
16 echo "dummy" > $(1).rootfs; \
17 $(TAR) -rf $(1) --transform='s/^.*/squashfs.tmp/' $(1).rootfs; \
19 mkhash md5 $(1).rootfs > $(1).md5; \
20 $(TAR) -rf $(1) --transform='s/^.*/squashfs.tmp.md5/' $(1).md5; \
22 echo '$(BOARD) $(VERSION_CODE) $(VERSION_NUMBER)' > $(1).version; \
23 $(TAR) -rf $(1) --transform='s/^.*/version.tmp/' $(1).version; \
25 $(CP) $(1) $(BIN_DIR)/; \
27 echo "WARNING: initramfs kernel image too big, cannot generate factory image" >&2; \
33 IMAGE_SIZE := $(ralink_default_fw_size_16M)
34 DEVICE_TITLE := WeVO 11AC NAS Router
35 DEVICE_PACKAGES := kmod-mt7603 kmod-usb3 kmod-usb-ledtrig-usbport wpad-mini
37 TARGET_DEVICES += 11acnas
39 define Device/dir-860l-b1
43 KERNEL := kernel-bin | patch-dtb | relocate-kernel | lzma | uImage lzma
44 IMAGE_SIZE := $(ralink_default_fw_size_16M)
45 IMAGE/sysupgrade.bin := \
46 append-kernel | pad-offset $$$$(BLOCKSIZE) 64 | append-rootfs | \
47 seama -m "dev=/dev/mtdblock/2" -m "type=firmware" | \
48 pad-rootfs | append-metadata | check-size $$$$(IMAGE_SIZE)
49 IMAGE/factory.bin := \
50 append-kernel | pad-offset $$$$(BLOCKSIZE) 64 | \
51 append-rootfs | pad-rootfs -x 64 | \
52 seama -m "dev=/dev/mtdblock/2" -m "type=firmware" | \
53 seama-seal -m "signature=wrgac13_dlink.2013gui_dir860lb" | \
54 check-size $$$$(IMAGE_SIZE)
55 DEVICE_TITLE := D-Link DIR-860L B1
56 DEVICE_PACKAGES := kmod-mt76x2 kmod-usb3 kmod-usb-ledtrig-usbport wpad-mini
58 TARGET_DEVICES += dir-860l-b1
60 define Device/mediatek_ap-mt7621a-v60
62 IMAGE_SIZE := $(ralink_default_fw_size_8M)
63 DEVICE_TITLE := Mediatek AP-MT7621A-V60 EVB
64 DEVICE_PACKAGES := kmod-usb3 kmod-sdhci-mt7620 kmod-sound-mt7620
66 TARGET_DEVICES += mediatek_ap-mt7621a-v60
70 IMAGE_SIZE := $(ralink_default_fw_size_16M)
71 DEVICE_TITLE := AFOUNDRY EW1200
73 kmod-ata-core kmod-ata-ahci kmod-mt76x2 kmod-mt7603 kmod-usb3 \
74 kmod-usb-ledtrig-usbport wpad-mini
76 TARGET_DEVICES += ew1200
80 IMAGE_SIZE := $(ralink_default_fw_size_16M)
81 DEVICE_TITLE := Firefly FireWRT
82 DEVICE_PACKAGES := kmod-mt76x2 kmod-usb3 kmod-usb-ledtrig-usbport wpad-mini
84 TARGET_DEVICES += firewrt
88 DEVICE_TITLE := GnuBee Personal Cloud One
89 DEVICE_PACKAGES := kmod-ata-core kmod-ata-ahci kmod-usb3 kmod-sdhci-mt7620
90 IMAGE_SIZE := $(ralink_default_fw_size_32M)
92 TARGET_DEVICES += gb-pc1
94 define Device/gnubee_gb-pc2
96 DEVICE_TITLE := GnuBee Personal Cloud Two
97 DEVICE_PACKAGES := kmod-ata-core kmod-ata-ahci kmod-usb3 kmod-sdhci-mt7620
98 IMAGE_SIZE := $(ralink_default_fw_size_32M)
100 TARGET_DEVICES += gnubee_gb-pc2
106 KERNEL_SIZE := 2097152
108 IMAGE_SIZE := $(ralink_default_fw_size_32M)
109 IMAGES += factory.bin
110 IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata
111 IMAGE/factory.bin := append-kernel | pad-to $$(KERNEL_SIZE) | append-ubi | check-size $$$$(IMAGE_SIZE)
112 DEVICE_TITLE := HiWiFi HC5962
113 DEVICE_PACKAGES := kmod-mt7603 kmod-mt76x2 kmod-usb3 wpad-mini
115 TARGET_DEVICES += hc5962
119 IMAGE_SIZE := $(ralink_default_fw_size_16M)
120 DEVICE_TITLE := Phicomm K2P
122 TARGET_DEVICES += k2p
129 KERNEL := $(KERNEL_DTB) | uImage lzma
132 IMAGES := sysupgrade.tar kernel1.bin rootfs0.bin
133 IMAGE/kernel1.bin := append-kernel
134 IMAGE/rootfs0.bin := append-ubi | check-size $$$$(IMAGE_SIZE)
135 IMAGE/sysupgrade.tar := sysupgrade-tar | append-metadata
136 DEVICE_TITLE := Xiaomi Mi Router 3G
137 SUPPORTED_DEVICES += R3G
139 kmod-mt7603 kmod-mt76x2 kmod-usb3 kmod-usb-ledtrig-usbport wpad-mini \
142 TARGET_DEVICES += mir3g
147 IMAGE_SIZE := $(ralink_default_fw_size_4M)
148 DEVICE_TITLE := MediaTek MT7621 EVB
150 TARGET_DEVICES += mt7621
152 define Device/newifi-d1
154 IMAGE_SIZE := $(ralink_default_fw_size_32M)
155 DEVICE_TITLE := Newifi D1
157 kmod-mt7603 kmod-mt76x2 kmod-usb3 kmod-usb-ledtrig-usbport wpad-mini
159 TARGET_DEVICES += newifi-d1
161 define Device/d-team_newifi-d2
163 IMAGE_SIZE := $(ralink_default_fw_size_32M)
164 DEVICE_TITLE := Newifi D2
166 kmod-mt7603 kmod-mt76x2 kmod-usb3 kmod-usb-ledtrig-usbport
168 TARGET_DEVICES += d-team_newifi-d2
172 IMAGE_SIZE := $(ralink_default_fw_size_16M)
173 DEVICE_TITLE := PBR-M1
175 kmod-ata-core kmod-ata-ahci kmod-mt7603 kmod-mt76x2 kmod-sdhci-mt7620 \
176 kmod-usb3 kmod-usb-ledtrig-usbport wpad-mini
178 TARGET_DEVICES += pbr-m1
185 KERNEL := $(KERNEL_DTB) | uImage lzma
188 IMAGES := sysupgrade.tar kernel.bin rootfs.bin
189 IMAGE/sysupgrade.tar := sysupgrade-tar | append-metadata
190 IMAGE/kernel.bin := append-kernel
191 IMAGE/rootfs.bin := append-ubi | check-size $$$$(IMAGE_SIZE)
192 DEVICE_TITLE := Netgear R6220
194 kmod-mt7603 kmod-mt76x2 kmod-usb3 kmod-usb-ledtrig-usbport wpad-mini
196 TARGET_DEVICES += r6220
198 define Device/rb750gr3
200 IMAGE_SIZE := $(ralink_default_fw_size_16M)
201 DEVICE_TITLE := MikroTik RB750Gr3
202 DEVICE_PACKAGES := kmod-usb3 uboot-envtools
204 TARGET_DEVICES += rb750gr3
206 define Device/re350-v1
208 DEVICE_TITLE := TP-LINK RE350 v1
209 DEVICE_PACKAGES := kmod-mt7603 kmod-mt76x2 wpad-mini
210 TPLINK_BOARD_ID := RE350-V1
213 TPLINK_HEADER_VERSION := 1
215 KERNEL := $(KERNEL_DTB) | tplink-v1-header -e
216 IMAGES := sysupgrade.bin factory.bin
217 IMAGE/sysupgrade.bin := append-rootfs | tplink-safeloader sysupgrade | append-metadata | check-size $$$$(IMAGE_SIZE)
218 IMAGE/factory.bin := append-rootfs | tplink-safeloader factory
220 TARGET_DEVICES += re350-v1
224 DEVICE_TITLE := Linksys RE6500
225 DEVICE_PACKAGES := kmod-mt76x2 wpad-mini
227 TARGET_DEVICES += re6500
229 define Device/sap-g3200u3
231 DEVICE_TITLE := STORYLiNK SAP-G3200U3
232 DEVICE_PACKAGES := kmod-mt76x2 kmod-usb3 kmod-usb-ledtrig-usbport wpad-mini
234 TARGET_DEVICES += sap-g3200u3
238 IMAGE_SIZE := $(ralink_default_fw_size_16M)
239 DEVICE_TITLE := SamKnows Whitebox 8
241 kmod-mt7603 kmod-mt76x2 kmod-usb3 kmod-usb-ledtrig-usbport \
242 uboot-envtools wpad-mini
244 TARGET_DEVICES += sk-wb8
246 define Device/timecloud
248 DEVICE_TITLE := Thunder Timecloud
249 DEVICE_PACKAGES := kmod-usb3
251 TARGET_DEVICES += timecloud
253 define Device/u7621-06-256M-16M
254 DTS := U7621-06-256M-16M
256 DEVICE_TITLE := UniElec U7621-06 (256M RAM/16M flash)
257 DEVICE_PACKAGES := kmod-ata-core kmod-ata-ahci kmod-sdhci-mt7620 kmod-usb3
259 TARGET_DEVICES += u7621-06-256M-16M
261 define Device/ubnt-erx
263 FILESYSTEMS := squashfs
264 KERNEL_SIZE := 3145728
265 KERNEL := $(KERNEL_DTB) | uImage lzma
266 IMAGES := sysupgrade.tar
267 KERNEL_INITRAMFS := $$(KERNEL) | ubnt-erx-factory-image $(KDIR)/tmp/$$(KERNEL_INITRAMFS_PREFIX)-factory.tar
268 IMAGE/sysupgrade.tar := sysupgrade-tar | append-metadata
269 DEVICE_TITLE := Ubiquiti EdgeRouter X
271 TARGET_DEVICES += ubnt-erx
273 define Device/ubnt-erx-sfp
276 DEVICE_TITLE := Ubiquiti EdgeRouter X-SFP
277 DEVICE_PACKAGES += kmod-i2c-algo-pca kmod-gpio-pca953x kmod-i2c-gpio-custom
279 TARGET_DEVICES += ubnt-erx-sfp
283 IMAGE_SIZE := 66453504
284 DEVICE_TITLE := Planex VR500
285 DEVICE_PACKAGES := kmod-usb3
287 TARGET_DEVICES += vr500
289 define Device/w2914nsv2
291 IMAGE_SIZE := $(ralink_default_fw_size_16M)
292 DEVICE_TITLE := WeVO W2914NS v2
294 kmod-mt7603 kmod-mt76x2 kmod-usb3 kmod-usb-ledtrig-usbport kmod-mt76 \
297 TARGET_DEVICES += w2914nsv2
299 define Device/wf-2881
303 FILESYSTEMS := squashfs
304 IMAGE_SIZE := 129280k
305 KERNEL := $(KERNEL_DTB) | pad-offset $$(BLOCKSIZE) 64 | uImage lzma
307 IMAGE/sysupgrade.bin := append-kernel | append-ubi | append-metadata | check-size $$$$(IMAGE_SIZE)
308 DEVICE_TITLE := NETIS WF-2881
309 DEVICE_PACKAGES := kmod-mt76x2 kmod-usb3 kmod-usb-ledtrig-usbport
311 TARGET_DEVICES += wf-2881
313 define Device/mqmaker_witi-256m
315 IMAGE_SIZE := $(ralink_default_fw_size_16M)
316 DEVICE_TITLE := MQmaker WiTi (256MB RAM)
318 kmod-ata-core kmod-ata-ahci kmod-mt76x2 kmod-sdhci-mt7620 kmod-usb3 \
319 kmod-usb-ledtrig-usbport wpad-mini
320 SUPPORTED_DEVICES += witi
322 TARGET_DEVICES += mqmaker_witi-256m
324 define Device/mqmaker_witi-512m
326 IMAGE_SIZE := $(ralink_default_fw_size_16M)
327 DEVICE_TITLE := MQmaker WiTi (512MB RAM)
329 kmod-ata-core kmod-ata-ahci kmod-mt76x2 kmod-sdhci-mt7620 kmod-usb3 \
330 kmod-usb-ledtrig-usbport wpad-mini
332 TARGET_DEVICES += mqmaker_witi-512m
334 define Device/wndr3700v5
336 IMAGE_SIZE := $(ralink_default_fw_size_16M)
337 DEVICE_TITLE := Netgear WNDR3700v5
338 DEVICE_PACKAGES := kmod-mt7603 kmod-mt76x2 kmod-usb3 wpad-mini
340 TARGET_DEVICES += wndr3700v5
342 define Device/youhua_wr1200js
345 DEVICE_TITLE := YouHua WR1200JS
347 kmod-mt7603 kmod-mt76x2 kmod-usb3 kmod-usb-ledtrig-usbport
349 TARGET_DEVICES += youhua_wr1200js
351 define Device/wsr-1166
353 IMAGE/sysupgrade.bin := trx | pad-rootfs | append-metadata
354 IMAGE_SIZE := $(ralink_default_fw_size_16M)
355 DEVICE_TITLE := Buffalo WSR-1166
356 DEVICE_PACKAGES := kmod-mt7603 kmod-mt76x2 wpad-mini
358 TARGET_DEVICES += wsr-1166
360 define Device/wsr-600
362 IMAGE_SIZE := $(ralink_default_fw_size_16M)
363 DEVICE_TITLE := Buffalo WSR-600
364 DEVICE_PACKAGES := kmod-mt7603 kmod-rt2800-pci wpad-mini
366 TARGET_DEVICES += wsr-600
368 define Device/zbt-we1326
370 IMAGE_SIZE := $(ralink_default_fw_size_16M)
371 DEVICE_TITLE := ZBT WE1326
373 kmod-mt7603 kmod-mt76x2 kmod-usb3 kmod-sdhci-mt7620 wpad-mini
375 TARGET_DEVICES += zbt-we1326
377 define Device/zbtlink_zbt-we3526
379 IMAGE_SIZE := $(ralink_default_fw_size_16M)
380 DEVICE_TITLE := ZBT WE3526
382 kmod-sdhci-mt7620 kmod-mt7603 kmod-mt76x2 \
383 kmod-usb3 kmod-usb-ledtrig-usbport wpad-mini
385 TARGET_DEVICES += zbtlink_zbt-we3526
387 define Device/zbt-wg2626
389 IMAGE_SIZE := $(ralink_default_fw_size_16M)
390 DEVICE_TITLE := ZBT WG2626
392 kmod-ata-core kmod-ata-ahci kmod-sdhci-mt7620 kmod-mt76x2 kmod-usb3 \
393 kmod-usb-ledtrig-usbport wpad-mini
395 TARGET_DEVICES += zbt-wg2626
397 define Device/zbt-wg3526-16M
398 DTS := ZBT-WG3526-16M
399 IMAGE_SIZE := $(ralink_default_fw_size_16M)
400 SUPPORTED_DEVICES += zbt-wg3526
401 DEVICE_TITLE := ZBT WG3526 (16MB flash)
403 kmod-ata-core kmod-ata-ahci kmod-sdhci-mt7620 kmod-mt7603 kmod-mt76x2 \
404 kmod-usb3 kmod-usb-ledtrig-usbport wpad-mini
406 TARGET_DEVICES += zbt-wg3526-16M
408 define Device/zbt-wg3526-32M
409 DTS := ZBT-WG3526-32M
410 IMAGE_SIZE := $(ralink_default_fw_size_32M)
411 SUPPORTED_DEVICES += ac1200pro
412 DEVICE_TITLE := ZBT WG3526 (32MB flash)
414 kmod-ata-core kmod-ata-ahci kmod-sdhci-mt7620 kmod-mt7603 kmod-mt76x2 \
415 kmod-usb3 kmod-usb-ledtrig-usbport wpad-mini
417 TARGET_DEVICES += zbt-wg3526-32M
419 # FIXME: is this still needed?
421 #define Build/Compile
422 rm -rf $(KDIR)/relocate
423 $(CP) ../../generic/image/relocate $(KDIR)
424 $(MAKE) -C $(KDIR)/relocate KERNEL_ADDR=$(KERNEL_LOADADDR) CROSS_COMPILE=$(TARGET_CROSS)
425 $(CP) $(KDIR)/relocate/loader.bin $(KDIR)/loader.bin