5 DEVICE_VARS += TPLINK_BOARD_ID TPLINK_HEADER_VERSION TPLINK_HWID TPLINK_HWREV
7 define Build/elecom-wrc-factory
8 $(eval product=$(word 1,$(1)))
9 $(eval version=$(word 2,$(1)))
10 $(STAGING_DIR_HOST)/bin/mkhash md5 $@ >> $@
12 echo -n "ELECOM $(product) v$(version)" | \
13 dd bs=32 count=1 conv=sync; \
19 define Build/ubnt-erx-factory-image
20 if [ -e $(KDIR)/tmp/$(KERNEL_INITRAMFS_IMAGE) -a "$$(stat -c%s $@)" -lt "$(KERNEL_SIZE)" ]; then \
21 echo '21001:6' > $(1).compat; \
22 $(TAR) -cf $(1) --transform='s/^.*/compat/' $(1).compat; \
24 $(TAR) -rf $(1) --transform='s/^.*/vmlinux.tmp/' $(KDIR)/tmp/$(KERNEL_INITRAMFS_IMAGE); \
25 mkhash md5 $(KDIR)/tmp/$(KERNEL_INITRAMFS_IMAGE) > $(1).md5; \
26 $(TAR) -rf $(1) --transform='s/^.*/vmlinux.tmp.md5/' $(1).md5; \
28 echo "dummy" > $(1).rootfs; \
29 $(TAR) -rf $(1) --transform='s/^.*/squashfs.tmp/' $(1).rootfs; \
31 mkhash md5 $(1).rootfs > $(1).md5; \
32 $(TAR) -rf $(1) --transform='s/^.*/squashfs.tmp.md5/' $(1).md5; \
34 echo '$(BOARD) $(VERSION_CODE) $(VERSION_NUMBER)' > $(1).version; \
35 $(TAR) -rf $(1) --transform='s/^.*/version.tmp/' $(1).version; \
37 $(CP) $(1) $(BIN_DIR)/; \
39 echo "WARNING: initramfs kernel image too big, cannot generate factory image" >&2; \
45 IMAGE_SIZE := $(ralink_default_fw_size_16M)
46 DEVICE_TITLE := WeVO 11AC NAS Router
47 DEVICE_PACKAGES := kmod-mt7603 kmod-usb3 kmod-usb-ledtrig-usbport wpad-mini
49 TARGET_DEVICES += 11acnas
51 define Device/dir-860l-b1
55 KERNEL := kernel-bin | patch-dtb | relocate-kernel | lzma | uImage lzma
56 IMAGE_SIZE := $(ralink_default_fw_size_16M)
57 IMAGE/sysupgrade.bin := \
58 append-kernel | pad-offset $$$$(BLOCKSIZE) 64 | append-rootfs | \
59 seama -m "dev=/dev/mtdblock/2" -m "type=firmware" | \
60 pad-rootfs | append-metadata | check-size $$$$(IMAGE_SIZE)
61 IMAGE/factory.bin := \
62 append-kernel | pad-offset $$$$(BLOCKSIZE) 64 | \
63 append-rootfs | pad-rootfs -x 64 | \
64 seama -m "dev=/dev/mtdblock/2" -m "type=firmware" | \
65 seama-seal -m "signature=wrgac13_dlink.2013gui_dir860lb" | \
66 check-size $$$$(IMAGE_SIZE)
67 DEVICE_TITLE := D-Link DIR-860L B1
68 DEVICE_PACKAGES := kmod-mt76x2 kmod-usb3 kmod-usb-ledtrig-usbport wpad-mini
70 TARGET_DEVICES += dir-860l-b1
72 define Device/mediatek_ap-mt7621a-v60
74 IMAGE_SIZE := $(ralink_default_fw_size_8M)
75 DEVICE_TITLE := Mediatek AP-MT7621A-V60 EVB
76 DEVICE_PACKAGES := kmod-usb3 kmod-sdhci-mt7620 kmod-sound-mt7620
78 TARGET_DEVICES += mediatek_ap-mt7621a-v60
80 define Device/elecom_wrc-1167ghbk2-s
81 DTS := WRC-1167GHBK2-S
83 DEVICE_TITLE := ELECOM WRC-1167GHBK2-S
85 IMAGE/factory.bin := $$(sysupgrade_bin) | check-size $$$$(IMAGE_SIZE) |\
86 elecom-wrc-factory WRC-1167GHBK2-S 0.00
88 TARGET_DEVICES += elecom_wrc-1167ghbk2-s
92 IMAGE_SIZE := $(ralink_default_fw_size_16M)
93 DEVICE_TITLE := AFOUNDRY EW1200
95 kmod-ata-core kmod-ata-ahci kmod-mt76x2 kmod-mt7603 kmod-usb3 \
96 kmod-usb-ledtrig-usbport wpad-mini
98 TARGET_DEVICES += ew1200
100 define Device/firewrt
102 IMAGE_SIZE := $(ralink_default_fw_size_16M)
103 DEVICE_TITLE := Firefly FireWRT
104 DEVICE_PACKAGES := kmod-mt76x2 kmod-usb3 kmod-usb-ledtrig-usbport wpad-mini
106 TARGET_DEVICES += firewrt
108 define Device/gnubee_gb-pc1
110 DEVICE_TITLE := GnuBee Personal Cloud One
111 DEVICE_PACKAGES := kmod-ata-core kmod-ata-ahci kmod-usb3 kmod-sdhci-mt7620
112 IMAGE_SIZE := $(ralink_default_fw_size_32M)
114 TARGET_DEVICES += gnubee_gb-pc1
116 define Device/gnubee_gb-pc2
118 DEVICE_TITLE := GnuBee Personal Cloud Two
119 DEVICE_PACKAGES := kmod-ata-core kmod-ata-ahci kmod-usb3 kmod-sdhci-mt7620
120 IMAGE_SIZE := $(ralink_default_fw_size_32M)
122 TARGET_DEVICES += gnubee_gb-pc2
128 KERNEL_SIZE := 2097152
130 IMAGE_SIZE := $(ralink_default_fw_size_32M)
131 IMAGES += factory.bin
132 IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata
133 IMAGE/factory.bin := append-kernel | pad-to $$(KERNEL_SIZE) | append-ubi | check-size $$$$(IMAGE_SIZE)
134 DEVICE_TITLE := HiWiFi HC5962
135 DEVICE_PACKAGES := kmod-mt7603 kmod-mt76x2 kmod-usb3 wpad-mini
137 TARGET_DEVICES += hc5962
139 define Device/iodata_wn-gx300gr
141 IMAGE_SIZE := 7798784
142 DEVICE_TITLE := I-O DATA WN-GX300GR
143 DEVICE_PACKAGES := kmod-mt7603 wpad-mini
145 TARGET_DEVICES += iodata_wn-gx300gr
149 IMAGE_SIZE := $(ralink_default_fw_size_16M)
150 DEVICE_TITLE := Phicomm K2P
152 TARGET_DEVICES += k2p
159 KERNEL := $(KERNEL_DTB) | uImage lzma
162 IMAGES := sysupgrade.tar kernel1.bin rootfs0.bin
163 IMAGE/kernel1.bin := append-kernel
164 IMAGE/rootfs0.bin := append-ubi | check-size $$$$(IMAGE_SIZE)
165 IMAGE/sysupgrade.tar := sysupgrade-tar | append-metadata
166 DEVICE_TITLE := Xiaomi Mi Router 3G
167 SUPPORTED_DEVICES += R3G
169 kmod-mt7603 kmod-mt76x2 kmod-usb3 kmod-usb-ledtrig-usbport wpad-mini \
172 TARGET_DEVICES += mir3g
177 IMAGE_SIZE := $(ralink_default_fw_size_4M)
178 DEVICE_TITLE := MediaTek MT7621 EVB
180 TARGET_DEVICES += mt7621
182 define Device/newifi-d1
184 IMAGE_SIZE := $(ralink_default_fw_size_32M)
185 DEVICE_TITLE := Newifi D1
187 kmod-mt7603 kmod-mt76x2 kmod-usb3 kmod-usb-ledtrig-usbport wpad-mini
189 TARGET_DEVICES += newifi-d1
191 define Device/d-team_newifi-d2
193 IMAGE_SIZE := $(ralink_default_fw_size_32M)
194 DEVICE_TITLE := Newifi D2
196 kmod-mt7603 kmod-mt76x2 kmod-usb3 kmod-usb-ledtrig-usbport wpad-mini
198 TARGET_DEVICES += d-team_newifi-d2
202 IMAGE_SIZE := $(ralink_default_fw_size_16M)
203 DEVICE_TITLE := PBR-M1
205 kmod-ata-core kmod-ata-ahci kmod-mt7603 kmod-mt76x2 kmod-sdhci-mt7620 \
206 kmod-usb3 kmod-usb-ledtrig-usbport wpad-mini
208 TARGET_DEVICES += pbr-m1
215 KERNEL := $(KERNEL_DTB) | uImage lzma
218 IMAGES := sysupgrade.tar kernel.bin rootfs.bin
219 IMAGE/sysupgrade.tar := sysupgrade-tar | append-metadata
220 IMAGE/kernel.bin := append-kernel
221 IMAGE/rootfs.bin := append-ubi | check-size $$$$(IMAGE_SIZE)
222 DEVICE_TITLE := Netgear R6220
224 kmod-mt7603 kmod-mt76x2 kmod-usb3 kmod-usb-ledtrig-usbport wpad-mini
226 TARGET_DEVICES += r6220
228 define Device/rb750gr3
230 IMAGE_SIZE := $(ralink_default_fw_size_16M)
231 DEVICE_TITLE := MikroTik RB750Gr3
232 DEVICE_PACKAGES := kmod-usb3 uboot-envtools
234 TARGET_DEVICES += rb750gr3
236 define Device/re350-v1
238 DEVICE_TITLE := TP-LINK RE350 v1
239 DEVICE_PACKAGES := kmod-mt7603 kmod-mt76x2 wpad-mini
240 TPLINK_BOARD_ID := RE350-V1
243 TPLINK_HEADER_VERSION := 1
245 KERNEL := $(KERNEL_DTB) | tplink-v1-header -e
246 IMAGES := sysupgrade.bin factory.bin
247 IMAGE/sysupgrade.bin := append-rootfs | tplink-safeloader sysupgrade | append-metadata | check-size $$$$(IMAGE_SIZE)
248 IMAGE/factory.bin := append-rootfs | tplink-safeloader factory
250 TARGET_DEVICES += re350-v1
254 DEVICE_TITLE := Linksys RE6500
255 DEVICE_PACKAGES := kmod-mt76x2 wpad-mini
257 TARGET_DEVICES += re6500
259 define Device/sap-g3200u3
261 DEVICE_TITLE := STORYLiNK SAP-G3200U3
262 DEVICE_PACKAGES := kmod-mt76x2 kmod-usb3 kmod-usb-ledtrig-usbport wpad-mini
264 TARGET_DEVICES += sap-g3200u3
268 IMAGE_SIZE := $(ralink_default_fw_size_16M)
269 DEVICE_TITLE := SamKnows Whitebox 8
271 kmod-mt7603 kmod-mt76x2 kmod-usb3 kmod-usb-ledtrig-usbport \
272 uboot-envtools wpad-mini
274 TARGET_DEVICES += sk-wb8
276 define Device/timecloud
278 DEVICE_TITLE := Thunder Timecloud
279 DEVICE_PACKAGES := kmod-usb3
281 TARGET_DEVICES += timecloud
283 define Device/u7621-06-256M-16M
284 DTS := U7621-06-256M-16M
286 DEVICE_TITLE := UniElec U7621-06 (256M RAM/16M flash)
287 DEVICE_PACKAGES := kmod-ata-core kmod-ata-ahci kmod-sdhci-mt7620 kmod-usb3
289 TARGET_DEVICES += u7621-06-256M-16M
291 define Device/ubnt-erx
293 FILESYSTEMS := squashfs
294 KERNEL_SIZE := 3145728
295 KERNEL := $(KERNEL_DTB) | uImage lzma
296 IMAGES := sysupgrade.tar
297 KERNEL_INITRAMFS := $$(KERNEL) | ubnt-erx-factory-image $(KDIR)/tmp/$$(KERNEL_INITRAMFS_PREFIX)-factory.tar
298 IMAGE/sysupgrade.tar := sysupgrade-tar | append-metadata
299 DEVICE_TITLE := Ubiquiti EdgeRouter X
301 TARGET_DEVICES += ubnt-erx
303 define Device/ubnt-erx-sfp
306 DEVICE_TITLE := Ubiquiti EdgeRouter X-SFP
307 DEVICE_PACKAGES += kmod-i2c-algo-pca kmod-gpio-pca953x kmod-i2c-gpio-custom
309 TARGET_DEVICES += ubnt-erx-sfp
313 IMAGE_SIZE := 66453504
314 DEVICE_TITLE := Planex VR500
315 DEVICE_PACKAGES := kmod-usb3
317 TARGET_DEVICES += vr500
319 define Device/w2914nsv2
321 IMAGE_SIZE := $(ralink_default_fw_size_16M)
322 DEVICE_TITLE := WeVO W2914NS v2
324 kmod-mt7603 kmod-mt76x2 kmod-usb3 kmod-usb-ledtrig-usbport wpad-mini
326 TARGET_DEVICES += w2914nsv2
328 define Device/wf-2881
332 FILESYSTEMS := squashfs
333 IMAGE_SIZE := 129280k
334 KERNEL := $(KERNEL_DTB) | pad-offset $$(BLOCKSIZE) 64 | uImage lzma
336 IMAGE/sysupgrade.bin := append-kernel | append-ubi | append-metadata | check-size $$$$(IMAGE_SIZE)
337 DEVICE_TITLE := NETIS WF-2881
338 DEVICE_PACKAGES := kmod-mt76x2 kmod-usb3 kmod-usb-ledtrig-usbport wpad-mini
340 TARGET_DEVICES += wf-2881
342 define Device/mqmaker_witi-256m
344 IMAGE_SIZE := $(ralink_default_fw_size_16M)
345 DEVICE_TITLE := MQmaker WiTi (256MB RAM)
347 kmod-ata-core kmod-ata-ahci kmod-mt76x2 kmod-sdhci-mt7620 kmod-usb3 \
348 kmod-usb-ledtrig-usbport wpad-mini
349 SUPPORTED_DEVICES += witi
351 TARGET_DEVICES += mqmaker_witi-256m
353 define Device/mqmaker_witi-512m
355 IMAGE_SIZE := $(ralink_default_fw_size_16M)
356 DEVICE_TITLE := MQmaker WiTi (512MB RAM)
358 kmod-ata-core kmod-ata-ahci kmod-mt76x2 kmod-sdhci-mt7620 kmod-usb3 \
359 kmod-usb-ledtrig-usbport wpad-mini
361 TARGET_DEVICES += mqmaker_witi-512m
363 define Device/wndr3700v5
365 IMAGE_SIZE := $(ralink_default_fw_size_16M)
366 DEVICE_TITLE := Netgear WNDR3700v5
367 DEVICE_PACKAGES := kmod-mt7603 kmod-mt76x2 kmod-usb3 wpad-mini
369 TARGET_DEVICES += wndr3700v5
371 define Device/youhua_wr1200js
374 DEVICE_TITLE := YouHua WR1200JS
376 kmod-mt7603 kmod-mt76x2 kmod-usb3 kmod-usb-ledtrig-usbport wpad-mini
378 TARGET_DEVICES += youhua_wr1200js
380 define Device/wsr-1166
382 IMAGE/sysupgrade.bin := trx | pad-rootfs | append-metadata
383 IMAGE_SIZE := $(ralink_default_fw_size_16M)
384 DEVICE_TITLE := Buffalo WSR-1166
385 DEVICE_PACKAGES := kmod-mt7603 kmod-mt76x2 wpad-mini
387 TARGET_DEVICES += wsr-1166
389 define Device/wsr-600
391 IMAGE_SIZE := $(ralink_default_fw_size_16M)
392 DEVICE_TITLE := Buffalo WSR-600
393 DEVICE_PACKAGES := kmod-mt7603 kmod-rt2800-pci wpad-mini
395 TARGET_DEVICES += wsr-600
397 define Device/zbt-we1326
399 IMAGE_SIZE := $(ralink_default_fw_size_16M)
400 DEVICE_TITLE := ZBT WE1326
402 kmod-mt7603 kmod-mt76x2 kmod-usb3 kmod-sdhci-mt7620 wpad-mini
404 TARGET_DEVICES += zbt-we1326
406 define Device/zbtlink_zbt-we3526
408 IMAGE_SIZE := $(ralink_default_fw_size_16M)
409 DEVICE_TITLE := ZBT WE3526
411 kmod-sdhci-mt7620 kmod-mt7603 kmod-mt76x2 \
412 kmod-usb3 kmod-usb-ledtrig-usbport wpad-mini
414 TARGET_DEVICES += zbtlink_zbt-we3526
416 define Device/zbt-wg2626
418 IMAGE_SIZE := $(ralink_default_fw_size_16M)
419 DEVICE_TITLE := ZBT WG2626
421 kmod-ata-core kmod-ata-ahci kmod-sdhci-mt7620 kmod-mt76x2 kmod-usb3 \
422 kmod-usb-ledtrig-usbport wpad-mini
424 TARGET_DEVICES += zbt-wg2626
426 define Device/zbt-wg3526-16M
427 DTS := ZBT-WG3526-16M
428 IMAGE_SIZE := $(ralink_default_fw_size_16M)
429 SUPPORTED_DEVICES += zbt-wg3526
430 DEVICE_TITLE := ZBT WG3526 (16MB flash)
432 kmod-ata-core kmod-ata-ahci kmod-sdhci-mt7620 kmod-mt7603 kmod-mt76x2 \
433 kmod-usb3 kmod-usb-ledtrig-usbport wpad-mini
435 TARGET_DEVICES += zbt-wg3526-16M
437 define Device/zbt-wg3526-32M
438 DTS := ZBT-WG3526-32M
439 IMAGE_SIZE := $(ralink_default_fw_size_32M)
440 SUPPORTED_DEVICES += ac1200pro
441 DEVICE_TITLE := ZBT WG3526 (32MB flash)
443 kmod-ata-core kmod-ata-ahci kmod-sdhci-mt7620 kmod-mt7603 kmod-mt76x2 \
444 kmod-usb3 kmod-usb-ledtrig-usbport wpad-mini
446 TARGET_DEVICES += zbt-wg3526-32M
448 # FIXME: is this still needed?
450 #define Build/Compile
451 rm -rf $(KDIR)/relocate
452 $(CP) ../../generic/image/relocate $(KDIR)
453 $(MAKE) -C $(KDIR)/relocate KERNEL_ADDR=$(KERNEL_LOADADDR) CROSS_COMPILE=$(TARGET_CROSS)
454 $(CP) $(KDIR)/relocate/loader.bin $(KDIR)/loader.bin