1 include ./common-buffalo.mk
2 include ./common-netgear.mk
4 DEVICE_VARS += ADDPATTERN_ID ADDPATTERN_VERSION
5 DEVICE_VARS += SEAMA_SIGNATURE SEAMA_MTDBLOCK
6 DEVICE_VARS += KERNEL_INITRAMFS_PREFIX
8 define Build/cybertan-trx
9 @echo -n '' > $@-empty.bin
10 -$(STAGING_DIR_HOST)/bin/trx -o $@.new \
11 -f $(IMAGE_KERNEL) -F $@-empty.bin \
12 -x 32 -a 0x10000 -x -32 -f $@
17 define Build/addpattern
18 -$(STAGING_DIR_HOST)/bin/addpattern -B $(ADDPATTERN_ID) \
19 -v v$(ADDPATTERN_VERSION) -i $@ -o $@.new
23 define Build/add-elecom-factory-initramfs
24 $(eval edimax_model=$(word 1,$(1)))
25 $(eval product=$(word 2,$(1)))
27 $(STAGING_DIR_HOST)/bin/mkedimaximg \
28 -b -s CSYS -m $(edimax_model) \
29 -f 0x70000 -S 0x01100000 \
33 echo -n -e "ELECOM\x00\x00$(product)" | dd bs=40 count=1 conv=sync; \
34 echo -n "0.00" | dd bs=16 count=1 conv=sync; \
38 if [ "$$(stat -c%s $@.factory.new)" -le $$(($(subst k,* 1024,$(subst m, * 1024k,$(IMAGE_SIZE))))) ]; then \
39 mv $@.factory.new $(BIN_DIR)/$(KERNEL_INITRAMFS_PREFIX)-factory.bin; \
41 echo "WARNING: initramfs kernel image too big, cannot generate factory image" >&2; \
46 $(STAGING_DIR_HOST)/bin/nec-enc \
47 -i $@ -o $@.new -k $(1)
52 ( stat -c%s $@ | tr -d "\n" | dd bs=16 count=1 conv=sync; ) >> $@
54 echo -n -e "$(1)" | dd bs=16 count=1 conv=sync; \
55 echo -n "0.0.00" | dd bs=16 count=1 conv=sync; \
62 KERNEL := kernel-bin | append-dtb | relocate-kernel | lzma
63 KERNEL_INITRAMFS := $$(KERNEL) | seama
68 # - 28 bytes seama_header
69 # - 36 bytes of META data (4-bytes aligned)
70 IMAGE/default := append-kernel | pad-offset $$$$(BLOCKSIZE) 64 | append-rootfs
71 IMAGE/sysupgrade.bin := \
72 $$(IMAGE/default) | seama | pad-rootfs | append-metadata | check-size $$$$(IMAGE_SIZE)
73 IMAGE/factory.bin := \
74 $$(IMAGE/default) | pad-rootfs -x 64 | seama | seama-seal | check-size $$$$(IMAGE_SIZE)
78 define Device/8dev_carambola2
80 DEVICE_TITLE := 8devices Carambola2
81 DEVICE_PACKAGES := kmod-usb2 kmod-usb-chipidea2
83 SUPPORTED_DEVICES += carambola2
85 TARGET_DEVICES += 8dev_carambola2
87 define Device/aruba_ap-105
89 DEVICE_TITLE := Aruba AP-105
91 DEVICE_PACKAGES := kmod-i2c-core kmod-i2c-gpio kmod-tpm-i2c-atmel
93 TARGET_DEVICES += aruba_ap-105
95 define Device/avm_fritz300e
97 DEVICE_TITLE := AVM FRITZ!WLAN Repeater 300E
98 KERNEL := kernel-bin | append-dtb | lzma | eva-image
99 KERNEL_INITRAMFS := $$(KERNEL)
101 IMAGE/sysupgrade.bin := append-kernel | pad-to 64k | \
102 append-squashfs-fakeroot-be | pad-to 256 | \
103 append-rootfs | pad-rootfs | append-metadata | check-size $$$$(IMAGE_SIZE)
104 DEVICE_PACKAGES := fritz-tffs rssileds -swconfig
106 TARGET_DEVICES += avm_fritz300e
108 define Device/avm_fritz4020
110 DEVICE_TITLE := AVM FRITZ!Box 4020
112 KERNEL := kernel-bin | append-dtb | lzma | eva-image
113 KERNEL_INITRAMFS := $$(KERNEL)
114 IMAGE/sysupgrade.bin := append-kernel | pad-to 64k | \
115 append-squashfs-fakeroot-be | pad-to 256 | \
116 append-rootfs | pad-rootfs | append-metadata | check-size $$$$(IMAGE_SIZE)
117 DEVICE_PACKAGES := fritz-tffs
118 SUPPORTED_DEVICES += fritz4020
120 TARGET_DEVICES += avm_fritz4020
122 define Device/buffalo_bhr-4grv
124 DEVICE_TITLE := Buffalo BHR-4GRV
125 DEVICE_PACKAGES := kmod-usb-core kmod-usb2 kmod-usb-ledtrig-usbport
127 IMAGES += factory.bin tftp.bin
128 IMAGE/default := append-kernel | pad-to $$$$(BLOCKSIZE) | append-rootfs | pad-rootfs | check-size $$$$(IMAGE_SIZE)
129 IMAGE/factory.bin := $$(IMAGE/default) | buffalo-enc BHR-4GRV 1.99 | buffalo-tag BHR-4GRV 3
130 IMAGE/tftp.bin := $$(IMAGE/default) | buffalo-tftp-header
131 SUPPORTED_DEVICES += wzr-hp-g450h
133 TARGET_DEVICES += buffalo_bhr-4grv
135 define Device/buffalo_bhr-4grv2
137 DEVICE_TITLE := Buffalo BHR-4GRV2
140 TARGET_DEVICES += buffalo_bhr-4grv2
142 define Device/buffalo_wzr-hp-ag300h
144 DEVICE_TITLE := Buffalo WZR-HP-AG300H
146 IMAGES += factory.bin tftp.bin
147 IMAGE/default := append-kernel | pad-to $$$$(BLOCKSIZE) | append-rootfs | pad-rootfs | check-size $$$$(IMAGE_SIZE)
148 IMAGE/factory.bin := $$(IMAGE/default) | buffalo-enc WZR-HP-AG300H 1.99 | buffalo-tag WZR-HP-AG300H 3
149 IMAGE/tftp.bin := $$(IMAGE/default) | buffalo-tftp-header
150 DEVICE_PACKAGES := kmod-usb-core kmod-usb-ohci kmod-usb2 kmod-usb-ledtrig-usbport kmod-leds-reset kmod-owl-loader
151 SUPPORTED_DEVICES += wzr-hp-ag300h
153 TARGET_DEVICES += buffalo_wzr-hp-ag300h
155 define Device/buffalo_wzr-hp-g302h-a1a0
157 DEVICE_TITLE := Buffalo WZR-HP-G302H A1A0
158 DEVICE_PACKAGES := kmod-usb-core kmod-usb2 kmod-usb-ledtrig-usbport
160 IMAGES += factory.bin tftp.bin
161 IMAGE/default := append-kernel | pad-to $$$$(BLOCKSIZE) | append-rootfs | pad-rootfs | check-size $$$$(IMAGE_SIZE)
162 IMAGE/factory.bin := $$(IMAGE/default) | buffalo-enc WZR-HP-G302H 1.99 | buffalo-tag WZR-HP-G302H 4
163 IMAGE/tftp.bin := $$(IMAGE/default) | buffalo-tftp-header
164 SUPPORTED_DEVICES += wzr-hp-g300nh2
166 TARGET_DEVICES += buffalo_wzr-hp-g302h-a1a0
168 define Device/buffalo_wzr-hp-g450h
170 DEVICE_TITLE := Buffalo WZR-HP-G450H/WZR-450HP
171 DEVICE_PACKAGES := kmod-usb-core kmod-usb2 kmod-usb-ledtrig-usbport
173 IMAGES += factory.bin tftp.bin
174 IMAGE/default := append-kernel | pad-to $$$$(BLOCKSIZE) | append-rootfs | pad-rootfs | check-size $$$$(IMAGE_SIZE)
175 IMAGE/factory.bin := $$(IMAGE/default) | buffalo-enc WZR-HP-G450H 1.99 | buffalo-tag WZR-HP-G450H 3
176 IMAGE/tftp.bin := $$(IMAGE/default) | buffalo-tftp-header
177 SUPPORTED_DEVICES += wzr-hp-g450h
179 TARGET_DEVICES += buffalo_wzr-hp-g450h
181 define Device/comfast_cf-e110n-v2
183 DEVICE_TITLE := COMFAST CF-E110N v2
184 DEVICE_PACKAGES := rssileds kmod-leds-gpio -swconfig -uboot-envtools
187 TARGET_DEVICES += comfast_cf-e110n-v2
189 define Device/comfast_cf-e120a-v3
191 DEVICE_TITLE := COMFAST CF-E120A v3
192 DEVICE_PACKAGES := rssileds kmod-leds-gpio -uboot-envtools
195 TARGET_DEVICES += comfast_cf-e120a-v3
197 define Device/comfast_cf-e5
199 DEVICE_TITLE := COMFAST CF-E5/E7
200 DEVICE_PACKAGES := rssileds kmod-leds-gpio kmod-usb-core kmod-usb2 kmod-usb-net \
201 kmod-usb-net-qmi-wwan -swconfig -uboot-envtools
204 TARGET_DEVICES += comfast_cf-e5
212 define Device/dlink_dir-825-b1
214 DEVICE_TITLE := D-LINK DIR-825 B1
216 IMAGE/sysupgrade.bin := append-kernel | append-rootfs | pad-rootfs | append-metadata | check-size $$$$(IMAGE_SIZE)
217 DEVICE_PACKAGES := kmod-usb-core kmod-usb-ohci kmod-usb2 kmod-usb-ledtrig-usbport kmod-leds-reset kmod-owl-loader
218 SUPPORTED_DEVICES += dir-825-b1
220 TARGET_DEVICES += dlink_dir-825-b1
222 define Device/dlink_dir-825-c1
224 DEVICE_TITLE := D-LINK DIR-825 C1
225 DEVICE_PACKAGES := kmod-usb-core kmod-usb2 kmod-usb-ledtrig-usbport kmod-leds-reset kmod-owl-loader
226 SUPPORTED_DEVICES += dir-825-c1
228 IMAGES := factory.bin sysupgrade.bin
229 IMAGE/default := append-kernel | pad-to $$$$(BLOCKSIZE) | append-rootfs | pad-rootfs
230 IMAGE/factory.bin := $$(IMAGE/default) | pad-offset $$$$(IMAGE_SIZE) 26 | \
231 append-string 00DB120AR9344-RT-101214-00 | check-size $$$$(IMAGE_SIZE)
232 IMAGE/sysupgrade.bin := $$(IMAGE/default) | append-metadata | check-size $$$$(IMAGE_SIZE)
234 TARGET_DEVICES += dlink_dir-825-c1
236 define Device/dlink_dir-835-a1
238 DEVICE_TITLE := D-LINK DIR-835 A1
239 DEVICE_PACKAGES := kmod-usb-core kmod-usb2 kmod-leds-reset kmod-owl-loader
240 SUPPORTED_DEVICES += dir-835-a1
242 IMAGES := factory.bin sysupgrade.bin
243 IMAGE/default := append-kernel | pad-to $$$$(BLOCKSIZE) | append-rootfs | pad-rootfs
244 IMAGE/factory.bin := $$(IMAGE/default) | pad-offset $$$$(IMAGE_SIZE) 26 | \
245 append-string 00DB120AR9344-RT-101214-00 | check-size $$$$(IMAGE_SIZE)
246 IMAGE/sysupgrade.bin := $$(IMAGE/default) | append-metadata | check-size $$$$(IMAGE_SIZE)
248 TARGET_DEVICES += dlink_dir-835-a1
252 define Device/elecom_wrc-300ghbk2-i
254 DEVICE_TITLE := ELECOM WRC-300GHBK2-I
256 KERNEL_INITRAMFS := $$(KERNEL) | pad-to 2 | \
257 add-elecom-factory-initramfs RN51 WRC-300GHBK2-I
259 TARGET_DEVICES += elecom_wrc-300ghbk2-i
261 define Device/embeddedwireless_dorin
263 DEVICE_TITLE := Embedded Wireless Dorin
264 DEVICE_PACKAGES := kmod-usb-chipidea2
267 TARGET_DEVICES += embeddedwireless_dorin
272 define Device/etactica_eg200
274 DEVICE_TITLE := eTactica EG200
275 DEVICE_PACKAGES := kmod-usb-chipidea2 kmod-ledtrig-oneshot \
276 kmod-usb-serial kmod-usb-serial-ftdi kmod-usb-storage kmod-fs-ext4
277 SUPPORTED_DEVICES += rme-eg200
279 TARGET_DEVICES += etactica_eg200
281 define Device/glinet_gl-ar150
283 DEVICE_TITLE := GL.iNet GL-AR150
284 DEVICE_PACKAGES := kmod-usb-chipidea2
286 SUPPORTED_DEVICES += gl-ar150
288 TARGET_DEVICES += glinet_gl-ar150
290 define Device/glinet_gl-ar300m-common-nor
292 DEVICE_PACKAGES := kmod-usb-core kmod-usb2
294 SUPPORTED_DEVICES += gl-ar300m tpe-r1200
297 define Device/glinet_gl-ar300m-lite
298 $(Device/glinet_gl-ar300m-common-nor)
299 DEVICE_TITLE := GL.iNet GL-AR300M-Lite
301 TARGET_DEVICES += glinet_gl-ar300m-lite
303 define Device/glinet_gl-ar300m-nor
304 $(Device/glinet_gl-ar300m-common-nor)
305 DEVICE_TITLE := GL.iNet GL-AR300M
307 TARGET_DEVICES += glinet_gl-ar300m-nor
309 define Device/glinet_gl-ar750s
311 DEVICE_TITLE := GL.iNet GL-AR750S
312 DEVICE_PACKAGES := kmod-usb2 block-mount
314 SUPPORTED_DEVICES += gl-ar750s
316 TARGET_DEVICES += glinet_gl-ar750s
318 define Device/glinet_gl-x750
320 DEVICE_TITLE := GL.iNet GL-X750
321 DEVICE_PACKAGES := kmod-usb-core kmod-usb2
324 TARGET_DEVICES += glinet_gl-x750
326 define Device/iodata_etg3-r
328 DEVICE_TITLE := I-O DATA ETG3-R
330 DEVICE_PACKAGES := -iwinfo -kmod-ath9k -wpad-basic
332 TARGET_DEVICES += iodata_etg3-r
337 define Device/iodata_wn-ag300dgr
339 DEVICE_TITLE := I-O DATA WN-AG300DGR
341 IMAGES += factory.bin
342 IMAGE/factory.bin := append-kernel | pad-to $$$$(BLOCKSIZE) | \
343 append-rootfs | pad-rootfs | check-size $$$$(IMAGE_SIZE) | \
344 senao-header -r 0x30a -p 0x47 -t 2
345 DEVICE_PACKAGES := kmod-usb-core kmod-usb2
347 TARGET_DEVICES += iodata_wn-ag300dgr
349 define Device/jjplus_ja76pf2
351 DEVICE_TITLE := jjPlus JA76PF2
352 DEVICE_PACKAGES += -kmod-ath9k -swconfig -wpad-mini -uboot-envtools fconfig
353 IMAGE/sysupgrade.bin := append-rootfs | pad-rootfs | combined-image | check-size $$$$(IMAGE_SIZE)
354 # IMAGE/sysupgrade.bin := append-rootfs | pad-rootfs | check-size $$$$(IMAGE_SIZE) | sysupgrade-tar rootfs=$$$$@ | append-metadata
355 KERNEL := kernel-bin | append-dtb | lzma | pad-to $$(BLOCKSIZE)
356 KERNEL_INITRAMFS := kernel-bin | append-dtb
359 TARGET_DEVICES += jjplus_ja76pf2
361 define Device/librerouter_librerouter-v1
363 DEVICE_TITLE := LibreRouter v1
365 DEVICE_PACKAGES := kmod-usb-core kmod-usb2
367 TARGET_DEVICES += librerouter_librerouter-v1
372 define Device/ocedo_raccoon
374 DEVICE_TITLE := OCEDO Raccoon
376 IMAGE/sysupgrade.bin := append-kernel | append-rootfs | pad-rootfs | append-metadata | check-size $$$$(IMAGE_SIZE)
378 TARGET_DEVICES += ocedo_raccoon
382 define Device/pcs_cap324
384 DEVICE_TITLE := PowerCloud Systems CAP324
386 SUPPORTED_DEVICES += cap324
388 TARGET_DEVICES += pcs_cap324
390 define Device/pcs_cr3000
392 DEVICE_TITLE := PowerCloud Systems CR3000
394 SUPPORTED_DEVICES += cr3000
396 TARGET_DEVICES += pcs_cr3000
398 define Device/pcs_cr5000
400 DEVICE_TITLE := PowerCloud Systems CR5000
401 DEVICE_PACKAGES := kmod-usb2 kmod-usb-core
403 SUPPORTED_DEVICES += cr5000
405 TARGET_DEVICES += pcs_cr5000
407 define Device/netgear_wndr3x00
409 IMAGE/default := append-kernel | pad-to $$$$(BLOCKSIZE) | netgear-squashfs | append-rootfs | pad-rootfs
410 DEVICE_PACKAGES := kmod-usb-core kmod-usb-ohci kmod-usb2 kmod-usb-ledtrig-usbport kmod-leds-reset kmod-owl-loader
411 $(Device/netgear_ath79)
416 define Device/netgear_wndr3700
417 $(Device/netgear_wndr3x00)
418 DEVICE_TITLE := NETGEAR WNDR3700
419 NETGEAR_KERNEL_MAGIC := 0x33373030
420 NETGEAR_BOARD_ID := WNDR3700
422 IMAGES += factory-NA.img
423 IMAGE/factory-NA.img := $$(IMAGE/default) | netgear-dni NA | check-size $$$$(IMAGE_SIZE)
424 SUPPORTED_DEVICES += wndr3700
426 TARGET_DEVICES += netgear_wndr3700
428 define Device/netgear_wndr3700v2
429 $(Device/netgear_wndr3x00)
430 DEVICE_TITLE := NETGEAR WNDR3700v2
431 NETGEAR_KERNEL_MAGIC := 0x33373031
432 NETGEAR_BOARD_ID := WNDR3700v2
433 NETGEAR_HW_ID := 29763654+16+64
435 SUPPORTED_DEVICES += wndr3700v2
437 TARGET_DEVICES += netgear_wndr3700v2
439 define Device/pisen_wmm003n
440 $(Device/tplink-8mlzma)
442 DEVICE_TITLE := Pisen WMM003N (Cloud Easy Power)
443 DEVICE_PACKAGES := kmod-usb-core kmod-usb2 kmod-usb-chipidea2
444 TPLINK_HWID := 0x07030101
446 TARGET_DEVICES += pisen_wmm003n
448 define Device/netgear_wndr3800
449 $(Device/netgear_wndr3x00)
450 DEVICE_TITLE := NETGEAR WNDR3800
451 NETGEAR_KERNEL_MAGIC := 0x33373031
452 NETGEAR_BOARD_ID := WNDR3800
453 NETGEAR_HW_ID := 29763654+16+128
455 SUPPORTED_DEVICES += wndr3800
457 TARGET_DEVICES += netgear_wndr3800
460 define Device/rosinson_wr818
462 DEVICE_TITLE := ROSINSON WR818
464 DEVICE_PACKAGES := kmod-usb-core kmod-usb2 kmod-usb-ledtrig-usbport
466 TARGET_DEVICES += rosinson_wr818
468 define Device/thinkpenguin_tpe-r1100
470 DEVICE_TITLE := ThinkPenguin TPE-R1100
471 DEVICE_PACKAGES := kmod-usb-chipidea2
473 SUPPORTED_DEVICES += tpe-r1100
475 TARGET_DEVICES += thinkpenguin_tpe-r1100
477 define Device/thinkpenguin_tpe-r1200-nor
478 $(Device/glinet_gl-ar300m-common-nor)
479 DEVICE_TITLE := ThinkPenguin TPE-R1200
481 TARGET_DEVICES += thinkpenguin_tpe-r1200-nor
483 define Device/wd_mynet-n750
486 DEVICE_TITLE := Western Digital My Net N750
488 DEVICE_PACKAGES := kmod-usb-core kmod-usb2
489 SEAMA_SIGNATURE := wrgnd13_wd_av
490 SUPPORTED_DEVICES += mynet-n750
492 TARGET_DEVICES += wd_mynet-n750
494 define Device/wd_mynet-wifi-rangeextender
496 DEVICE_TITLE := Western Digital My Net Wi-Fi Range Extender
497 DEVICE_PACKAGES := rssileds nvram -swconfig
499 ADDPATTERN_ID := mynet-rext
500 ADDPATTERN_VERSION := 1.00.01
501 IMAGE/sysupgrade.bin := append-rootfs | pad-rootfs | cybertan-trx | \
502 addpattern | append-metadata
503 SUPPORTED_DEVICES += mynet-rext
505 TARGET_DEVICES += wd_mynet-wifi-rangeextender
507 define Device/winchannel_wb2000
509 DEVICE_TITLE := Winchannel WB2000
511 DEVICE_PACKAGES := kmod-i2c-core kmod-i2c-gpio kmod-rtc-ds1307 kmod-usb2 kmod-usb-ledtrig-usbport
513 TARGET_DEVICES += winchannel_wb2000
515 define Device/xiaomi_mi-router-4q
517 DEVICE_TITLE := Xiaomi Mi Router 4Q
520 TARGET_DEVICES += xiaomi_mi-router-4q
523 define Device/zbtlink_zbt-wd323
525 DEVICE_TITLE := ZBT WD323
527 DEVICE_PACKAGES := kmod-usb2 kmod-i2c-core kmod-i2c-gpio kmod-rtc-pcf8563 \
528 kmod-usb-serial kmod-usb-serial-cp210x uqmi
530 TARGET_DEVICES += zbtlink_zbt-wd323