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/seama -i $@ $(1)
45 define Build/seama-seal
46 $(call Build/seama,-s $@.seama $(1))
49 define Device/ArcherC20i
51 KERNEL := $(KERNEL_DTB)
52 KERNEL_INITRAMFS := $(KERNEL_DTB) | tplink-header ArcherC20i -c
53 IMAGE/sysupgrade.bin := append-kernel | tplink-header ArcherC20i -j -r $(KDIR)/root.squashfs
54 DEVICE_TITLE := TP-Link ArcherC20i
56 TARGET_DEVICES += ArcherC20i
58 define Device/ArcherC50
60 KERNEL := $(KERNEL_DTB)
61 KERNEL_INITRAMFS := $(KERNEL_DTB) | tplink-header ArcherC50 -c
62 IMAGE/sysupgrade.bin := append-kernel | tplink-header ArcherC50 -j -r $(KDIR)/root.squashfs
63 DEVICE_TITLE := TP-Link ArcherC50
65 TARGET_DEVICES += ArcherC50
67 ex2700_mtd_size=3866624
70 IMAGE_SIZE := $(ex2700_mtd_size)
72 KERNEL := $(KERNEL_DTB) | uImage lzma | pad-kernel-ex2700
73 IMAGE/factory.bin := $$(IMAGE/sysupgrade.bin) | netgear-header -B EX2700 -H 29764623+4+0+32+2x2+0
74 DEVICE_TITLE := Netgear EX2700
76 TARGET_DEVICES += ex2700
78 define Device/wt3020-4M
80 IMAGE_SIZE := $(ralink_default_fw_size_4M)
82 IMAGE/factory.bin := $$(IMAGE/sysupgrade.bin) | poray-header -B WT3020 -F 4M
83 DEVICE_TITLE := Nexx WT3020 (4MB)
85 TARGET_DEVICES += wt3020-4M
87 define Device/wt3020-8M
89 IMAGE_SIZE := $(ralink_default_fw_size_8M)
91 IMAGE/factory.bin := $$(IMAGE/sysupgrade.bin) | poray-header -B WT3020 -F 8M
92 DEVICE_TITLE := Nexx WT3020 (8MB)
94 TARGET_DEVICES += wt3020-8M
96 define Device/wrh-300cr
98 IMAGE_SIZE := $(ralink_default_fw_size_16M)
100 IMAGE/factory.bin := $$(IMAGE/sysupgrade.bin) | elecom-header
101 DEVICE_TITLE := Elecom WRH-300CR
102 DEVICE_PACKAGES := kmod-usb2 kmod-usb-ohci
104 TARGET_DEVICES += wrh-300cr
108 IMAGES += factory.bin
109 IMAGE/factory.bin := $$(IMAGE/sysupgrade.bin) | umedia-header 0x013326
110 DEVICE_TITLE := Linksys E1700
112 TARGET_DEVICES += e1700
114 br100_mtd_size=8126464
115 define Device/ai-br100
117 IMAGE_SIZE := $(br100_mtd_size)
118 DEVICE_TITLE := Aigale Ai-BR100
119 DEVICE_PACKAGES:= kmod-usb2 kmod-usb-ohci
121 TARGET_DEVICES += ai-br100
123 whr_300hp2_mtd_size=7012352
124 define Device/whr-300hp2
126 IMAGE_SIZE := $(whr_300hp2_mtd_size)
127 DEVICE_TITLE := Buffalo WHR-300HP2
129 TARGET_DEVICES += whr-300hp2
131 define Device/whr-600d
133 IMAGE_SIZE := $(whr_300hp2_mtd_size)
134 DEVICE_TITLE := Buffalo WHR-600D
136 TARGET_DEVICES += whr-600d
138 whr_1166d_mtd_size=15400960
139 define Device/whr-1166d
141 IMAGE_SIZE := $(whr_1166d_mtd_size)
142 DEVICE_TITLE := Buffalo WHR-1166D
144 TARGET_DEVICES += whr-1166d
146 dlink810l_mtd_size=6881280
147 define Device/dir-810l
149 IMAGE_SIZE := $(dlink810l_mtd_size)
150 DEVICE_TITLE := D-Link DIR-810L
152 TARGET_DEVICES += dir-810l
154 na930_mtd_size=20971520
157 IMAGE_SIZE := $(na930_mtd_size)
158 DEVICE_TITLE := Sercomm NA930
160 TARGET_DEVICES += na930
162 microwrt_mtd_size=16515072
163 define Device/microwrt
165 IMAGE_SIZE := $(microwrt_mtd_size)
166 DEVICE_TITLE := Microduino MicroWRT
168 TARGET_DEVICES += microwrt
170 define Device/mt7620a
172 IMAGE_SIZE := $(ralink_default_fw_size_8M)
173 DEVICE_TITLE := MediaTek MT7620a EVB
175 TARGET_DEVICES += mt7620a
177 define Device/mt7620a_mt7610e
178 DTS := MT7620a_MT7610e
179 IMAGE_SIZE := $(ralink_default_fw_size_8M)
180 DEVICE_TITLE := MediaTek MT7620a + MT7610e EVB
182 TARGET_DEVICES += mt7620a_mt7610e
184 define Device/mt7620a_mt7530
185 DTS := MT7620a_MT7530
186 IMAGE_SIZE := $(ralink_default_fw_size_8M)
187 DEVICE_TITLE := MediaTek MT7620a + MT7530 EVB
189 TARGET_DEVICES += mt7620a_mt7530
191 define Device/mt7620a_v22sg
193 IMAGE_SIZE := $(ralink_default_fw_size_8M)
194 DEVICE_TITLE := MediaTek MT7620a V22SG
196 TARGET_DEVICES += mt7620a_v22sg
200 IMAGE_SIZE := $(ralink_default_fw_size_8M)
201 DEVICE_TITLE := Asus RP-N53
203 TARGET_DEVICES += rp-n53
205 define Device/cf-wr800n
207 IMAGE_SIZE := $(ralink_default_fw_size_8M)
208 DEVICE_TITLE := Comfast CF-WR800N
210 TARGET_DEVICES += cf-wr800n
212 define Device/cs-qr10
214 IMAGE_SIZE := $(ralink_default_fw_size_8M)
215 DEVICE_TITLE := Planex CS-QR10
216 DEVICE_PACKAGES := kmod-usb2 kmod-usb-ohci kmod-i2c-core kmod-i2c-ralink kmod-sound-core kmod-sound-mtk kmod-sdhci-mt7620
218 TARGET_DEVICES += cs-qr10
220 define Device/db-wrt01
222 IMAGE_SIZE := $(ralink_default_fw_size_8M)
223 DEVICE_TITLE := Planex DB-WRT01
225 TARGET_DEVICES += db-wrt01
227 define Device/mzk-750dhp
229 IMAGE_SIZE := $(ralink_default_fw_size_8M)
230 DEVICE_TITLE := Planex MZK-750DHP
231 DEVICE_PACKAGES := kmod-mt76
233 TARGET_DEVICES += mzk-750dhp
235 define Device/mzk-ex300np
237 IMAGE_SIZE := $(ralink_default_fw_size_8M)
238 DEVICE_TITLE := Planex MZK-EX300NP
240 TARGET_DEVICES += mzk-ex300np
242 define Device/mzk-ex750np
244 IMAGE_SIZE := $(ralink_default_fw_size_8M)
245 DEVICE_TITLE := Planex MZK-EX750NP
246 DEVICE_PACKAGES := kmod-mt76
248 TARGET_DEVICES += mzk-ex750np
252 IMAGE_SIZE := $(ralink_default_fw_size_16M)
253 DEVICE_TITLE := HiWiFi HC5661
254 DEVICE_PACKAGES := kmod-usb2 kmod-sdhci kmod-sdhci-mt7620 kmod-ledtrig-usbdev
256 TARGET_DEVICES += hc5661
260 IMAGE_SIZE := $(ralink_default_fw_size_16M)
261 DEVICE_TITLE := HiWiFi HC5761
262 DEVICE_PACKAGES := kmod-usb2 kmod-usb-ohci kmod-sdhci kmod-sdhci-mt7620 kmod-ledtrig-usbdev
264 TARGET_DEVICES += hc5761
268 IMAGE_SIZE := $(ralink_default_fw_size_16M)
269 DEVICE_TITLE := HiWiFi HC5861
270 DEVICE_PACKAGES := kmod-usb2 kmod-usb-ohci kmod-sdhci kmod-sdhci-mt7620 kmod-ledtrig-usbdev
272 TARGET_DEVICES += hc5861
274 define Device/oy-0001
276 IMAGE_SIZE := $(ralink_default_fw_size_16M)
277 DEVICE_TITLE := Oh Yeah OY-0001
279 TARGET_DEVICES += oy-0001
281 define Device/psg1208
283 IMAGE_SIZE := $(ralink_default_fw_size_8M)
284 DEVICE_TITLE := Phicomm PSG1208
285 DEVICE_PACKAGES := kmod-mt76
287 TARGET_DEVICES += psg1208
291 IMAGE_SIZE := $(ralink_default_fw_size_16M)
292 DEVICE_TITLE := Lenovo Y1
298 IMAGE_SIZE := $(ralink_default_fw_size_16M)
299 DEVICE_TITLE := Lenovo Y1S
301 TARGET_DEVICES += y1s
305 IMAGE_SIZE := $(ralink_default_fw_size_16M)
306 DEVICE_TITLE := Kingston MLW221
308 TARGET_DEVICES += mlw221
312 IMAGE_SIZE := $(ralink_default_fw_size_16M)
313 DEVICE_TITLE := Kingston MLWG2
315 TARGET_DEVICES += mlwg2
317 define Device/wmr-300
319 IMAGE_SIZE := $(ralink_default_fw_size_8M)
320 DEVICE_TITLE := Buffalo WMR-300
322 TARGET_DEVICES += wmr-300
324 define Device/rt-n14u
326 IMAGE_SIZE := $(ralink_default_fw_size_8M)
327 DEVICE_TITLE := Asus RT-N14u
329 TARGET_DEVICES += rt-n14u
331 define Device/wrtnode
333 IMAGE_SIZE := $(ralink_default_fw_size_16M)
334 DEVICE_TITLE := WRTNode
336 TARGET_DEVICES += wrtnode
338 define Device/miwifi-mini
340 IMAGE_SIZE := $(ralink_default_fw_size_16M)
341 DEVICE_TITLE := Xiaomi MiWiFi Mini
342 DEVICE_PACKAGES := kmod-usb2 kmod-usb-ohci
344 TARGET_DEVICES += miwifi-mini
346 define Device/gl-mt300a
348 IMAGE_SIZE := $(ralink_default_fw_size_16M)
349 DEVICE_TITLE := GL-Inet GL-MT300A
350 DEVICE_PACKAGES := kmod-usb2 kmod-usb-ohci kmod-mt76
352 TARGET_DEVICES += gl-mt300a
354 define Device/gl-mt300n
356 IMAGE_SIZE := $(ralink_default_fw_size_16M)
357 DEVICE_TITLE := GL-Inet GL-MT300N
358 DEVICE_PACKAGES := kmod-usb2 kmod-usb-ohci kmod-mt76
360 TARGET_DEVICES += gl-mt300n
362 define Device/gl-mt750
364 IMAGE_SIZE := $(ralink_default_fw_size_16M)
365 DEVICE_TITLE := GL-Inet GL-MT750
366 DEVICE_PACKAGES := kmod-usb2 kmod-usb-ohci kmod-mt76
368 TARGET_DEVICES += gl-mt750
372 IMAGE_SIZE := $(ralink_default_fw_size_8M)
373 DEVICE_TITLE := ZTE Q7
375 TARGET_DEVICES += zte-q7
377 define Device/youku-yk1
379 IMAGE_SIZE := $(ralink_default_fw_size_16M)
380 DEVICE_TITLE := YOUKU YK1
382 TARGET_DEVICES += youku-yk1
384 define Device/zbt-ape522ii
386 IMAGE_SIZE := $(ralink_default_fw_size_8M)
387 DEVICE_TITLE := Zbtlink ZBT-APE522II
388 DEVICE_PACKAGES := kmod-mt76
390 TARGET_DEVICES += zbt-ape522ii
392 define Device/zbt-wa05
394 IMAGE_SIZE := $(ralink_default_fw_size_8M)
395 DEVICE_TITLE := Zbtlink ZBT-WA05
397 TARGET_DEVICES += zbt-wa05
399 define Device/zbt-we826
401 IMAGE_SIZE := $(ralink_default_fw_size_16M)
402 DEVICE_TITLE := Zbtlink ZBT-WE826
403 DEVICE_PACKAGES := kmod-usb2 kmod-usb-ohci kmod-mt76 kmod-sdhci-mt7620
405 TARGET_DEVICES += zbt-we826
407 define Device/zbt-wr8305rt
409 IMAGE_SIZE := $(ralink_default_fw_size_8M)
410 DEVICE_TITLE := Zbtlink ZBT-WR8305RT
412 TARGET_DEVICES += zbt-wr8305rt
414 define Device/tiny-ac
416 IMAGE_SIZE := $(ralink_default_fw_size_8M)
417 DEVICE_TITLE := Dovado Tiny AC
418 DEVICE_PACKAGES := kmod-usb2 kmod-usb-ohci
420 TARGET_DEVICES += tiny-ac
422 dch_m225_mtd_size=7012352
423 define Device/dch-m225
425 IMAGES += factory.bin
426 IMAGE_SIZE := $(dch_m225_mtd_size)
427 IMAGE/sysupgrade.bin := \
428 append-kernel | pad-offset 65536 64 | append-rootfs | \
429 seama -m "dev=/dev/mtdblock/2" -m "type=firmware" | \
430 pad-rootfs | check-size $$$$(IMAGE_SIZE)
431 IMAGE/factory.bin := \
432 append-kernel | pad-offset 65536 64 | append-rootfs | pad-rootfs -x 64 | \
433 seama -m "dev=/dev/mtdblock/2" -m "type=firmware" | \
434 seama-seal -m "signature=wapn22_dlink.2013gui_dap1320b" | \
435 check-size $$$$(IMAGE_SIZE)
436 DEVICE_TITLE := D-Link DCH-M225
437 DEVICE_PACKAGES := kmod-mt76
439 TARGET_DEVICES += dch-m225