5 define Build/tplink-header
6 $(STAGING_DIR_HOST)/bin/mktplinkfw2 -a 0x4 -V "ver. 2.0" -B $(1) \
7 -o $@.new -k $@ -r $(IMAGE_ROOTFS) && mv $@.new $@
10 define Build/pad-kernel-ex2700
11 cp $@ $@.tmp && dd if=/dev/zero bs=64 count=1 >> $@.tmp \
12 && dd if=$@.tmp of=$@.new bs=64k conv=sync && truncate -s -64 $@.new \
13 && cat ex2700-fakeroot.uImage >> $@.new && rm $@.tmp && mv $@.new $@
16 define Build/netgear-header
17 $(STAGING_DIR_HOST)/bin/mkdniimg \
18 $(1) -v OpenWrt -i $@ \
19 -o $@.new && mv $@.new $@
22 define Build/elecom-header
23 cp $@ $(KDIR)/v_0.0.0.bin
25 $(STAGING_DIR_HOST)/bin/md5sum $(KDIR)/v_0.0.0.bin | \
28 ) | $(STAGING_DIR_HOST)/bin/md5sum | \
29 sed 's/ .*//' > $(KDIR)/v_0.0.0.md5
30 $(STAGING_DIR_HOST)/bin/tar -cf $@ -C $(KDIR) v_0.0.0.bin v_0.0.0.md5
34 $(STAGING_DIR_HOST)/bin/zyimage $(1) $@
37 define Device/ArcherC20i
39 SUPPORTED_DEVICES := c20i
40 KERNEL := $(KERNEL_DTB)
41 KERNEL_INITRAMFS := $(KERNEL_DTB) | tplink-header ArcherC20i -c
42 IMAGE/sysupgrade.bin := append-kernel | tplink-header ArcherC20i -j | append-metadata
43 DEVICE_TITLE := TP-Link ArcherC20i
45 TARGET_DEVICES += ArcherC20i
47 define Device/ArcherC50
49 SUPPORTED_DEVICES := c50
50 KERNEL := $(KERNEL_DTB)
51 KERNEL_INITRAMFS := $(KERNEL_DTB) | tplink-header ArcherC50 -c
52 IMAGE/sysupgrade.bin := append-kernel | tplink-header ArcherC50 -j | append-metadata
53 DEVICE_TITLE := TP-Link ArcherC50
55 TARGET_DEVICES += ArcherC50
57 define Device/ArcherMR200
59 SUPPORTED_DEVICES := mr200
60 KERNEL := $(KERNEL_DTB)
61 KERNEL_INITRAMFS := $(KERNEL_DTB) | tplink-header ArcherMR200 -c
62 IMAGE/sysupgrade.bin := append-kernel | tplink-header ArcherMR200 -j | append-metadata
63 DEVICE_PACKAGES := kmod-usb2 kmod-usb-net kmod-usb-net-rndis kmod-usb-serial kmod-usb-serial-option adb
64 DEVICE_TITLE := TP-Link ArcherMR200
66 TARGET_DEVICES += ArcherMR200
71 IMAGE_SIZE := $(ralink_default_fw_size_4M)
73 KERNEL := $(KERNEL_DTB) | uImage lzma | pad-kernel-ex2700
74 IMAGE/factory.bin := $$(sysupgrade_bin) | check-size $$$$(IMAGE_SIZE) | \
75 netgear-header -B EX2700 -H 29764623+4+0+32+2x2+0
76 DEVICE_TITLE := Netgear EX2700
78 TARGET_DEVICES += ex2700
80 define Device/wt3020-4M
83 IMAGE_SIZE := $(ralink_default_fw_size_4M)
85 IMAGE/factory.bin := $$(sysupgrade_bin) | check-size $$$$(IMAGE_SIZE) | \
86 poray-header -B WT3020 -F 4M
87 DEVICE_TITLE := Nexx WT3020 (4MB)
89 TARGET_DEVICES += wt3020-4M
91 define Device/wt3020-8M
94 IMAGE/factory.bin := $$(sysupgrade_bin) | check-size $$$$(IMAGE_SIZE) | \
95 poray-header -B WT3020 -F 8M
96 DEVICE_TITLE := Nexx WT3020 (8MB)
98 TARGET_DEVICES += wt3020-8M
100 define Device/wrh-300cr
102 IMAGE_SIZE := $(ralink_default_fw_size_16M)
103 IMAGES += factory.bin
104 IMAGE/factory.bin := $$(sysupgrade_bin) | check-size $$$$(IMAGE_SIZE) | \
106 DEVICE_TITLE := Elecom WRH-300CR
107 DEVICE_PACKAGES := kmod-usb2 kmod-usb-ohci
109 TARGET_DEVICES += wrh-300cr
113 IMAGES += factory.bin
114 IMAGE/factory.bin := $$(sysupgrade_bin) | check-size $$$$(IMAGE_SIZE) | \
115 umedia-header 0x013326
116 DEVICE_TITLE := Linksys E1700
118 TARGET_DEVICES += e1700
120 define Device/ai-br100
123 DEVICE_TITLE := Aigale Ai-BR100
124 DEVICE_PACKAGES:= kmod-usb2 kmod-usb-ohci
126 TARGET_DEVICES += ai-br100
128 define Device/whr-300hp2
131 DEVICE_TITLE := Buffalo WHR-300HP2
133 TARGET_DEVICES += whr-300hp2
135 define Device/whr-600d
138 DEVICE_TITLE := Buffalo WHR-600D
140 TARGET_DEVICES += whr-600d
142 define Device/whr-1166d
145 DEVICE_TITLE := Buffalo WHR-1166D
147 TARGET_DEVICES += whr-1166d
149 define Device/dir-810l
152 DEVICE_TITLE := D-Link DIR-810L
154 TARGET_DEVICES += dir-810l
159 DEVICE_TITLE := Sercomm NA930
161 TARGET_DEVICES += na930
163 define Device/microwrt
166 DEVICE_TITLE := Microduino MicroWRT
168 TARGET_DEVICES += microwrt
170 define Device/mt7620a
172 DEVICE_TITLE := MediaTek MT7620a EVB
174 TARGET_DEVICES += mt7620a
176 define Device/mt7620a_mt7610e
177 DTS := MT7620a_MT7610e
178 DEVICE_TITLE := MediaTek MT7620a + MT7610e EVB
180 TARGET_DEVICES += mt7620a_mt7610e
182 define Device/mt7620a_mt7530
183 DTS := MT7620a_MT7530
184 DEVICE_TITLE := MediaTek MT7620a + MT7530 EVB
186 TARGET_DEVICES += mt7620a_mt7530
188 define Device/mt7620a_v22sg
190 DEVICE_TITLE := MediaTek MT7620a V22SG
192 TARGET_DEVICES += mt7620a_v22sg
196 DEVICE_TITLE := Asus RP-N53
198 TARGET_DEVICES += rp-n53
200 define Device/cf-wr800n
202 DEVICE_TITLE := Comfast CF-WR800N
204 TARGET_DEVICES += cf-wr800n
206 define Device/cs-qr10
208 DEVICE_TITLE := Planex CS-QR10
209 DEVICE_PACKAGES := kmod-usb2 kmod-usb-ohci kmod-i2c-core kmod-i2c-ralink kmod-sound-core kmod-sound-mtk kmod-sdhci-mt7620
211 TARGET_DEVICES += cs-qr10
213 define Device/db-wrt01
215 DEVICE_TITLE := Planex DB-WRT01
217 TARGET_DEVICES += db-wrt01
219 define Device/mzk-750dhp
221 DEVICE_TITLE := Planex MZK-750DHP
222 DEVICE_PACKAGES := kmod-mt76
224 TARGET_DEVICES += mzk-750dhp
226 define Device/mzk-ex300np
228 DEVICE_TITLE := Planex MZK-EX300NP
230 TARGET_DEVICES += mzk-ex300np
232 define Device/mzk-ex750np
234 DEVICE_TITLE := Planex MZK-EX750NP
235 DEVICE_PACKAGES := kmod-mt76
237 TARGET_DEVICES += mzk-ex750np
241 IMAGE_SIZE := $(ralink_default_fw_size_16M)
242 DEVICE_TITLE := HiWiFi HC5661
243 DEVICE_PACKAGES := kmod-usb2 kmod-sdhci kmod-sdhci-mt7620 kmod-usb-ledtrig-usbport
245 TARGET_DEVICES += hc5661
249 IMAGE_SIZE := $(ralink_default_fw_size_16M)
250 DEVICE_TITLE := HiWiFi HC5761
251 DEVICE_PACKAGES := kmod-usb2 kmod-usb-ohci kmod-sdhci kmod-sdhci-mt7620 kmod-usb-ledtrig-usbport
253 TARGET_DEVICES += hc5761
257 IMAGE_SIZE := $(ralink_default_fw_size_16M)
258 DEVICE_TITLE := HiWiFi HC5861
259 DEVICE_PACKAGES := kmod-usb2 kmod-usb-ohci kmod-sdhci kmod-sdhci-mt7620 kmod-usb-ledtrig-usbport
261 TARGET_DEVICES += hc5861
263 define Device/oy-0001
265 IMAGE_SIZE := $(ralink_default_fw_size_16M)
266 DEVICE_TITLE := Oh Yeah OY-0001
268 TARGET_DEVICES += oy-0001
270 define Device/psg1208
272 DEVICE_TITLE := Phicomm PSG1208
273 DEVICE_PACKAGES := kmod-mt76
275 TARGET_DEVICES += psg1208
277 define Device/psg1218
279 DEVICE_TITLE := Phicomm PSG1218
280 DEVICE_PACKAGES := kmod-mt76
282 TARGET_DEVICES += psg1218
286 IMAGE_SIZE := $(ralink_default_fw_size_16M)
287 DEVICE_TITLE := Lenovo Y1
293 IMAGE_SIZE := $(ralink_default_fw_size_16M)
294 DEVICE_TITLE := Lenovo Y1S
296 TARGET_DEVICES += y1s
300 IMAGE_SIZE := $(ralink_default_fw_size_16M)
301 DEVICE_TITLE := Kingston MLW221
303 TARGET_DEVICES += mlw221
307 IMAGE_SIZE := $(ralink_default_fw_size_16M)
308 DEVICE_TITLE := Kingston MLWG2
310 TARGET_DEVICES += mlwg2
312 define Device/wmr-300
314 DEVICE_TITLE := Buffalo WMR-300
316 TARGET_DEVICES += wmr-300
318 define Device/rt-n14u
320 DEVICE_TITLE := Asus RT-N14u
322 TARGET_DEVICES += rt-n14u
324 define Device/wrtnode
326 IMAGE_SIZE := $(ralink_default_fw_size_16M)
327 DEVICE_TITLE := WRTNode
329 TARGET_DEVICES += wrtnode
331 define Device/miwifi-mini
333 IMAGE_SIZE := $(ralink_default_fw_size_16M)
334 DEVICE_TITLE := Xiaomi MiWiFi Mini
335 DEVICE_PACKAGES := kmod-usb2 kmod-usb-ohci
337 TARGET_DEVICES += miwifi-mini
339 define Device/gl-mt300a
341 IMAGE_SIZE := $(ralink_default_fw_size_16M)
342 DEVICE_TITLE := GL-Inet GL-MT300A
343 DEVICE_PACKAGES := kmod-usb2 kmod-usb-ohci kmod-mt76
345 TARGET_DEVICES += gl-mt300a
347 define Device/gl-mt300n
349 IMAGE_SIZE := $(ralink_default_fw_size_16M)
350 DEVICE_TITLE := GL-Inet GL-MT300N
351 DEVICE_PACKAGES := kmod-usb2 kmod-usb-ohci kmod-mt76
353 TARGET_DEVICES += gl-mt300n
355 define Device/gl-mt750
357 IMAGE_SIZE := $(ralink_default_fw_size_16M)
358 DEVICE_TITLE := GL-Inet GL-MT750
359 DEVICE_PACKAGES := kmod-usb2 kmod-usb-ohci kmod-mt76
361 TARGET_DEVICES += gl-mt750
365 DEVICE_TITLE := ZTE Q7
367 TARGET_DEVICES += zte-q7
369 define Device/youku-yk1
371 IMAGE_SIZE := $(ralink_default_fw_size_16M)
372 DEVICE_TITLE := YOUKU YK1
374 TARGET_DEVICES += youku-yk1
376 define Device/zbt-ape522ii
378 DEVICE_TITLE := Zbtlink ZBT-APE522II
379 DEVICE_PACKAGES := kmod-mt76
381 TARGET_DEVICES += zbt-ape522ii
383 define Device/zbt-cpe102
385 DEVICE_TITLE := Zbtlink ZBT-CPE102
386 DEVICE_PACKAGES := kmod-usb2 kmod-usb-ohci
388 TARGET_DEVICES += zbt-cpe102
390 define Device/zbt-wa05
392 DEVICE_TITLE := Zbtlink ZBT-WA05
394 TARGET_DEVICES += zbt-wa05
396 define Device/zbt-we826
398 IMAGE_SIZE := $(ralink_default_fw_size_16M)
399 DEVICE_TITLE := Zbtlink ZBT-WE826
400 DEVICE_PACKAGES := kmod-usb2 kmod-usb-ohci kmod-mt76 kmod-sdhci-mt7620
402 TARGET_DEVICES += zbt-we826
404 define Device/zbt-wr8305rt
406 DEVICE_TITLE := Zbtlink ZBT-WR8305RT
408 TARGET_DEVICES += zbt-wr8305rt
410 define Device/tiny-ac
412 DEVICE_TITLE := Dovado Tiny AC
413 DEVICE_PACKAGES := kmod-usb2 kmod-usb-ohci
415 TARGET_DEVICES += tiny-ac
417 define Device/dch-m225
420 IMAGES += factory.bin
422 IMAGE/sysupgrade.bin := \
423 append-kernel | pad-offset $$$$(BLOCKSIZE) 64 | append-rootfs | \
424 seama -m "dev=/dev/mtdblock/2" -m "type=firmware" | \
425 pad-rootfs | append-metadata | check-size $$$$(IMAGE_SIZE)
426 IMAGE/factory.bin := \
427 append-kernel | pad-offset $$$$(BLOCKSIZE) 64 | \
428 append-rootfs | pad-rootfs -x 64 | \
429 seama -m "dev=/dev/mtdblock/2" -m "type=firmware" | \
430 seama-seal -m "signature=wapn22_dlink.2013gui_dap1320b" | \
431 check-size $$$$(IMAGE_SIZE)
432 DEVICE_TITLE := D-Link DCH-M225
433 DEVICE_PACKAGES := kmod-mt76
435 TARGET_DEVICES += dch-m225
439 DEVICE_TITLE := ZyXEL Keenetic Omni
440 DEVICE_PACKAGES := kmod-usb2 kmod-usb-ohci kmod-usb-ledtrig-usbport
441 IMAGES += factory.bin
442 IMAGE/factory.bin := $$(IMAGE/sysupgrade.bin) | check-size $$$$(IMAGE_SIZE) | \
443 zyimage -d 4882 -v "ZyXEL Keenetic Omni"
445 TARGET_DEVICES += kn_rc
449 DEVICE_TITLE := ZyXEL Keenetic Omni II
450 DEVICE_PACKAGES := kmod-usb2 kmod-usb-ohci kmod-usb-ledtrig-usbport
451 IMAGES += factory.bin
452 IMAGE/factory.bin := $$(IMAGE/sysupgrade.bin) | check-size $$$$(IMAGE_SIZE) | \
453 zyimage -d 2102034 -v "ZyXEL Keenetic Omni II"
455 TARGET_DEVICES += kn_rf
459 IMAGE_SIZE := $(ralink_default_fw_size_16M)
460 DEVICE_TITLE := ZyXEL Keenetic Viva
461 DEVICE_PACKAGES := kmod-usb2 kmod-usb-ohci kmod-usb-ledtrig-usbport kmod-switch-rtl8366-smi kmod-switch-rtl8367b
462 IMAGES += factory.bin
463 IMAGE/factory.bin := $$(sysupgrade_bin) | check-size $$$$(IMAGE_SIZE) | \
464 zyimage -d 8997 -v "ZyXEL Keenetic Viva"
466 TARGET_DEVICES += kng_rc