5 define Build/tplink-header
6 $(STAGING_DIR_HOST)/bin/mktplinkfw2 -a 0x4 -V "ver. 2.0" -B $(1) \
7 -o $@.new -k $@ && 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/poray-header
29 define Build/elecom-header
30 cp $@ $(KDIR)/v_0.0.0.bin
32 $(STAGING_DIR_HOST)/bin/md5sum $(KDIR)/v_0.0.0.bin | \
35 ) | $(STAGING_DIR_HOST)/bin/md5sum | \
36 sed 's/ .*//' > $(KDIR)/v_0.0.0.md5
37 $(STAGING_DIR_HOST)/bin/tar -cf $@ -C $(KDIR) v_0.0.0.bin v_0.0.0.md5
41 $(STAGING_DIR_HOST)/bin/zyimage $(1) $@
44 define Device/ArcherC20i
46 KERNEL := $(KERNEL_DTB)
47 KERNEL_INITRAMFS := $(KERNEL_DTB) | tplink-header ArcherC20i -c
48 IMAGE/sysupgrade.bin := append-kernel | tplink-header ArcherC20i -j -r $(KDIR)/root.squashfs
49 DEVICE_TITLE := TP-Link ArcherC20i
51 TARGET_DEVICES += ArcherC20i
53 define Device/ArcherC50
55 KERNEL := $(KERNEL_DTB)
56 KERNEL_INITRAMFS := $(KERNEL_DTB) | tplink-header ArcherC50 -c
57 IMAGE/sysupgrade.bin := append-kernel | tplink-header ArcherC50 -j -r $(KDIR)/root.squashfs
58 DEVICE_TITLE := TP-Link ArcherC50
60 TARGET_DEVICES += ArcherC50
65 IMAGE_SIZE := $(ralink_default_fw_size_4M)
67 KERNEL := $(KERNEL_DTB) | uImage lzma | pad-kernel-ex2700
68 IMAGE/factory.bin := $$(IMAGE/sysupgrade.bin) | netgear-header -B EX2700 -H 29764623+4+0+32+2x2+0
69 DEVICE_TITLE := Netgear EX2700
71 TARGET_DEVICES += ex2700
73 define Device/wt3020-4M
76 IMAGE_SIZE := $(ralink_default_fw_size_4M)
78 IMAGE/factory.bin := $$(IMAGE/sysupgrade.bin) | poray-header -B WT3020 -F 4M
79 DEVICE_TITLE := Nexx WT3020 (4MB)
81 TARGET_DEVICES += wt3020-4M
83 define Device/wt3020-8M
86 IMAGE/factory.bin := $$(IMAGE/sysupgrade.bin) | poray-header -B WT3020 -F 8M
87 DEVICE_TITLE := Nexx WT3020 (8MB)
89 TARGET_DEVICES += wt3020-8M
91 define Device/wrh-300cr
93 IMAGE_SIZE := $(ralink_default_fw_size_16M)
95 IMAGE/factory.bin := $$(IMAGE/sysupgrade.bin) | elecom-header
96 DEVICE_TITLE := Elecom WRH-300CR
97 DEVICE_PACKAGES := kmod-usb2 kmod-usb-ohci
99 TARGET_DEVICES += wrh-300cr
103 IMAGES += factory.bin
104 IMAGE/factory.bin := $$(IMAGE/sysupgrade.bin) | umedia-header 0x013326
105 DEVICE_TITLE := Linksys E1700
107 TARGET_DEVICES += e1700
109 define Device/ai-br100
112 DEVICE_TITLE := Aigale Ai-BR100
113 DEVICE_PACKAGES:= kmod-usb2 kmod-usb-ohci
115 TARGET_DEVICES += ai-br100
117 define Device/whr-300hp2
120 DEVICE_TITLE := Buffalo WHR-300HP2
122 TARGET_DEVICES += whr-300hp2
124 define Device/whr-600d
127 DEVICE_TITLE := Buffalo WHR-600D
129 TARGET_DEVICES += whr-600d
131 define Device/whr-1166d
134 DEVICE_TITLE := Buffalo WHR-1166D
136 TARGET_DEVICES += whr-1166d
138 define Device/dir-810l
141 DEVICE_TITLE := D-Link DIR-810L
143 TARGET_DEVICES += dir-810l
148 DEVICE_TITLE := Sercomm NA930
150 TARGET_DEVICES += na930
152 define Device/microwrt
155 DEVICE_TITLE := Microduino MicroWRT
157 TARGET_DEVICES += microwrt
159 define Device/mt7620a
161 DEVICE_TITLE := MediaTek MT7620a EVB
163 TARGET_DEVICES += mt7620a
165 define Device/mt7620a_mt7610e
166 DTS := MT7620a_MT7610e
167 DEVICE_TITLE := MediaTek MT7620a + MT7610e EVB
169 TARGET_DEVICES += mt7620a_mt7610e
171 define Device/mt7620a_mt7530
172 DTS := MT7620a_MT7530
173 DEVICE_TITLE := MediaTek MT7620a + MT7530 EVB
175 TARGET_DEVICES += mt7620a_mt7530
177 define Device/mt7620a_v22sg
179 DEVICE_TITLE := MediaTek MT7620a V22SG
181 TARGET_DEVICES += mt7620a_v22sg
185 DEVICE_TITLE := Asus RP-N53
187 TARGET_DEVICES += rp-n53
189 define Device/cf-wr800n
191 DEVICE_TITLE := Comfast CF-WR800N
193 TARGET_DEVICES += cf-wr800n
195 define Device/cs-qr10
197 DEVICE_TITLE := Planex CS-QR10
198 DEVICE_PACKAGES := kmod-usb2 kmod-usb-ohci kmod-i2c-core kmod-i2c-ralink kmod-sound-core kmod-sound-mtk kmod-sdhci-mt7620
200 TARGET_DEVICES += cs-qr10
202 define Device/db-wrt01
204 DEVICE_TITLE := Planex DB-WRT01
206 TARGET_DEVICES += db-wrt01
208 define Device/mzk-750dhp
210 DEVICE_TITLE := Planex MZK-750DHP
211 DEVICE_PACKAGES := kmod-mt76
213 TARGET_DEVICES += mzk-750dhp
215 define Device/mzk-ex300np
217 DEVICE_TITLE := Planex MZK-EX300NP
219 TARGET_DEVICES += mzk-ex300np
221 define Device/mzk-ex750np
223 DEVICE_TITLE := Planex MZK-EX750NP
224 DEVICE_PACKAGES := kmod-mt76
226 TARGET_DEVICES += mzk-ex750np
230 IMAGE_SIZE := $(ralink_default_fw_size_16M)
231 DEVICE_TITLE := HiWiFi HC5661
232 DEVICE_PACKAGES := kmod-usb2 kmod-sdhci kmod-sdhci-mt7620 kmod-usb-ledtrig-usbport
234 TARGET_DEVICES += hc5661
238 IMAGE_SIZE := $(ralink_default_fw_size_16M)
239 DEVICE_TITLE := HiWiFi HC5761
240 DEVICE_PACKAGES := kmod-usb2 kmod-usb-ohci kmod-sdhci kmod-sdhci-mt7620 kmod-usb-ledtrig-usbport
242 TARGET_DEVICES += hc5761
246 IMAGE_SIZE := $(ralink_default_fw_size_16M)
247 DEVICE_TITLE := HiWiFi HC5861
248 DEVICE_PACKAGES := kmod-usb2 kmod-usb-ohci kmod-sdhci kmod-sdhci-mt7620 kmod-usb-ledtrig-usbport
250 TARGET_DEVICES += hc5861
252 define Device/oy-0001
254 IMAGE_SIZE := $(ralink_default_fw_size_16M)
255 DEVICE_TITLE := Oh Yeah OY-0001
257 TARGET_DEVICES += oy-0001
259 define Device/psg1208
261 DEVICE_TITLE := Phicomm PSG1208
262 DEVICE_PACKAGES := kmod-mt76
264 TARGET_DEVICES += psg1208
266 define Device/psg1218
268 DEVICE_TITLE := Phicomm PSG1218
269 DEVICE_PACKAGES := kmod-mt76
271 TARGET_DEVICES += psg1218
275 IMAGE_SIZE := $(ralink_default_fw_size_16M)
276 DEVICE_TITLE := Lenovo Y1
282 IMAGE_SIZE := $(ralink_default_fw_size_16M)
283 DEVICE_TITLE := Lenovo Y1S
285 TARGET_DEVICES += y1s
289 IMAGE_SIZE := $(ralink_default_fw_size_16M)
290 DEVICE_TITLE := Kingston MLW221
292 TARGET_DEVICES += mlw221
296 IMAGE_SIZE := $(ralink_default_fw_size_16M)
297 DEVICE_TITLE := Kingston MLWG2
299 TARGET_DEVICES += mlwg2
301 define Device/wmr-300
303 DEVICE_TITLE := Buffalo WMR-300
305 TARGET_DEVICES += wmr-300
307 define Device/rt-n14u
309 DEVICE_TITLE := Asus RT-N14u
311 TARGET_DEVICES += rt-n14u
313 define Device/wrtnode
315 IMAGE_SIZE := $(ralink_default_fw_size_16M)
316 DEVICE_TITLE := WRTNode
318 TARGET_DEVICES += wrtnode
320 define Device/miwifi-mini
322 IMAGE_SIZE := $(ralink_default_fw_size_16M)
323 DEVICE_TITLE := Xiaomi MiWiFi Mini
324 DEVICE_PACKAGES := kmod-usb2 kmod-usb-ohci
326 TARGET_DEVICES += miwifi-mini
328 define Device/gl-mt300a
330 IMAGE_SIZE := $(ralink_default_fw_size_16M)
331 DEVICE_TITLE := GL-Inet GL-MT300A
332 DEVICE_PACKAGES := kmod-usb2 kmod-usb-ohci kmod-mt76
334 TARGET_DEVICES += gl-mt300a
336 define Device/gl-mt300n
338 IMAGE_SIZE := $(ralink_default_fw_size_16M)
339 DEVICE_TITLE := GL-Inet GL-MT300N
340 DEVICE_PACKAGES := kmod-usb2 kmod-usb-ohci kmod-mt76
342 TARGET_DEVICES += gl-mt300n
344 define Device/gl-mt750
346 IMAGE_SIZE := $(ralink_default_fw_size_16M)
347 DEVICE_TITLE := GL-Inet GL-MT750
348 DEVICE_PACKAGES := kmod-usb2 kmod-usb-ohci kmod-mt76
350 TARGET_DEVICES += gl-mt750
354 DEVICE_TITLE := ZTE Q7
356 TARGET_DEVICES += zte-q7
358 define Device/youku-yk1
360 IMAGE_SIZE := $(ralink_default_fw_size_16M)
361 DEVICE_TITLE := YOUKU YK1
363 TARGET_DEVICES += youku-yk1
365 define Device/zbt-ape522ii
367 DEVICE_TITLE := Zbtlink ZBT-APE522II
368 DEVICE_PACKAGES := kmod-mt76
370 TARGET_DEVICES += zbt-ape522ii
372 define Device/zbt-cpe102
374 DEVICE_TITLE := Zbtlink ZBT-CPE102
375 DEVICE_PACKAGES := kmod-usb2 kmod-usb-ohci
377 TARGET_DEVICES += zbt-cpe102
379 define Device/zbt-wa05
381 DEVICE_TITLE := Zbtlink ZBT-WA05
383 TARGET_DEVICES += zbt-wa05
385 define Device/zbt-we826
387 IMAGE_SIZE := $(ralink_default_fw_size_16M)
388 DEVICE_TITLE := Zbtlink ZBT-WE826
389 DEVICE_PACKAGES := kmod-usb2 kmod-usb-ohci kmod-mt76 kmod-sdhci-mt7620
391 TARGET_DEVICES += zbt-we826
393 define Device/zbt-wr8305rt
395 DEVICE_TITLE := Zbtlink ZBT-WR8305RT
397 TARGET_DEVICES += zbt-wr8305rt
399 define Device/tiny-ac
401 DEVICE_TITLE := Dovado Tiny AC
402 DEVICE_PACKAGES := kmod-usb2 kmod-usb-ohci
404 TARGET_DEVICES += tiny-ac
406 define Device/dch-m225
409 IMAGES += factory.bin
411 IMAGE/sysupgrade.bin := \
412 append-kernel | pad-offset $$$$(BLOCKSIZE) 64 | append-rootfs | \
413 seama -m "dev=/dev/mtdblock/2" -m "type=firmware" | \
414 pad-rootfs | check-size $$$$(IMAGE_SIZE)
415 IMAGE/factory.bin := \
416 append-kernel | pad-offset $$$$(BLOCKSIZE) 64 | \
417 append-rootfs | pad-rootfs -x 64 | \
418 seama -m "dev=/dev/mtdblock/2" -m "type=firmware" | \
419 seama-seal -m "signature=wapn22_dlink.2013gui_dap1320b" | \
420 check-size $$$$(IMAGE_SIZE)
421 DEVICE_TITLE := D-Link DCH-M225
422 DEVICE_PACKAGES := kmod-mt76
424 TARGET_DEVICES += dch-m225
428 IMAGE_SIZE := $(ralink_default_fw_size_16M)
429 DEVICE_TITLE := ZyXEL Keenetic Viva
430 DEVICE_PACKAGES := kmod-usb2 kmod-usb-ohci kmod-usb-ledtrig-usbport kmod-switch-rtl8366-smi kmod-switch-rtl8367b
431 IMAGES += factory.bin
432 IMAGE/factory.bin := $$(IMAGE/sysupgrade.bin) | zyimage -d 8997 -v "ZyXEL Keenetic Viva"
434 TARGET_DEVICES += kng_rc