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 ( stat -c%s $@ | tr -d "\n" | dd bs=16 count=1 conv=sync; ) >> $@
48 echo -n -e "$(1)" | dd bs=16 count=1 conv=sync; \
49 echo -n "0.0.00" | dd bs=16 count=1 conv=sync; \
56 KERNEL := kernel-bin | append-dtb | relocate-kernel | lzma
57 KERNEL_INITRAMFS := $$(KERNEL) | seama
62 # - 28 bytes seama_header
63 # - 36 bytes of META data (4-bytes aligned)
64 IMAGE/default := append-kernel | pad-offset $$$$(BLOCKSIZE) 64 | append-rootfs
65 IMAGE/sysupgrade.bin := \
66 $$(IMAGE/default) | seama | pad-rootfs | append-metadata | check-size $$$$(IMAGE_SIZE)
67 IMAGE/factory.bin := \
68 $$(IMAGE/default) | pad-rootfs -x 64 | seama | seama-seal | check-size $$$$(IMAGE_SIZE)
72 define Device/avm_fritz300e
74 DEVICE_TITLE := AVM FRITZ!WLAN Repeater 300E
75 KERNEL := kernel-bin | append-dtb | lzma | eva-image
76 KERNEL_INITRAMFS := $$(KERNEL)
78 IMAGE/sysupgrade.bin := append-kernel | pad-to 64k | \
79 append-squashfs-fakeroot-be | pad-to 256 | \
80 append-rootfs | pad-rootfs | append-metadata | check-size $$$$(IMAGE_SIZE)
81 DEVICE_PACKAGES := fritz-tffs rssileds -swconfig
83 TARGET_DEVICES += avm_fritz300e
85 define Device/avm_fritz4020
87 DEVICE_TITLE := AVM FRITZ!Box 4020
89 KERNEL := kernel-bin | append-dtb | lzma | eva-image
90 KERNEL_INITRAMFS := $$(KERNEL)
91 IMAGE/sysupgrade.bin := append-kernel | pad-to 64k | \
92 append-squashfs-fakeroot-be | pad-to 256 | \
93 append-rootfs | pad-rootfs | append-metadata | check-size $$$$(IMAGE_SIZE)
94 DEVICE_PACKAGES := fritz-tffs
95 SUPPORTED_DEVICES += fritz4020
97 TARGET_DEVICES += avm_fritz4020
99 define Device/buffalo_bhr-4grv
101 DEVICE_TITLE := Buffalo BHR-4GRV
102 DEVICE_PACKAGES := kmod-usb-core kmod-usb2 kmod-usb-ledtrig-usbport
104 IMAGES += factory.bin tftp.bin
105 IMAGE/default := append-kernel | pad-to $$$$(BLOCKSIZE) | append-rootfs | pad-rootfs | check-size $$$$(IMAGE_SIZE)
106 IMAGE/factory.bin := $$(IMAGE/default) | buffalo-enc BHR-4GRV 1.99 | buffalo-tag BHR-4GRV 3
107 IMAGE/tftp.bin := $$(IMAGE/default) | buffalo-tftp-header
108 SUPPORTED_DEVICES += wzr-hp-g450h
110 TARGET_DEVICES += buffalo_bhr-4grv
112 define Device/buffalo_bhr-4grv2
114 DEVICE_TITLE := Buffalo BHR-4GRV2
117 TARGET_DEVICES += buffalo_bhr-4grv2
119 define Device/buffalo_wzr-hp-ag300h
121 DEVICE_TITLE := Buffalo WZR-HP-AG300H
123 IMAGES += factory.bin tftp.bin
124 IMAGE/default := append-kernel | pad-to $$$$(BLOCKSIZE) | append-rootfs | pad-rootfs | check-size $$$$(IMAGE_SIZE)
125 IMAGE/factory.bin := $$(IMAGE/default) | buffalo-enc WZR-HP-AG300H 1.99 | buffalo-tag WZR-HP-AG300H 3
126 IMAGE/tftp.bin := $$(IMAGE/default) | buffalo-tftp-header
127 DEVICE_PACKAGES := kmod-usb-core kmod-usb-ohci kmod-usb2 kmod-usb-ledtrig-usbport kmod-leds-reset kmod-owl-loader
128 SUPPORTED_DEVICES += wzr-hp-ag300h
130 TARGET_DEVICES += buffalo_wzr-hp-ag300h
132 define Device/buffalo_wzr-hp-g302h-a1a0
134 DEVICE_TITLE := Buffalo WZR-HP-G302H A1A0
135 DEVICE_PACKAGES := kmod-usb-core kmod-usb2 kmod-usb-ledtrig-usbport
137 IMAGES += factory.bin tftp.bin
138 IMAGE/default := append-kernel | pad-to $$$$(BLOCKSIZE) | append-rootfs | pad-rootfs | check-size $$$$(IMAGE_SIZE)
139 IMAGE/factory.bin := $$(IMAGE/default) | buffalo-enc WZR-HP-G302H 1.99 | buffalo-tag WZR-HP-G302H 4
140 IMAGE/tftp.bin := $$(IMAGE/default) | buffalo-tftp-header
141 SUPPORTED_DEVICES += wzr-hp-g300nh2
143 TARGET_DEVICES += buffalo_wzr-hp-g302h-a1a0
145 define Device/buffalo_wzr-hp-g450h
147 DEVICE_TITLE := Buffalo WZR-HP-G450H/WZR-450HP
148 DEVICE_PACKAGES := kmod-usb-core kmod-usb2 kmod-usb-ledtrig-usbport
150 IMAGES += factory.bin tftp.bin
151 IMAGE/default := append-kernel | pad-to $$$$(BLOCKSIZE) | append-rootfs | pad-rootfs | check-size $$$$(IMAGE_SIZE)
152 IMAGE/factory.bin := $$(IMAGE/default) | buffalo-enc WZR-HP-G450H 1.99 | buffalo-tag WZR-HP-G450H 3
153 IMAGE/tftp.bin := $$(IMAGE/default) | buffalo-tftp-header
154 SUPPORTED_DEVICES += wzr-hp-g450h
156 TARGET_DEVICES += buffalo_wzr-hp-g450h
158 define Device/comfast_cf-e110n-v2
160 DEVICE_TITLE := COMFAST CF-E110N v2
161 DEVICE_PACKAGES := rssileds kmod-leds-gpio -swconfig -uboot-envtools
164 TARGET_DEVICES += comfast_cf-e110n-v2
166 define Device/comfast_cf-e120a-v3
168 DEVICE_TITLE := COMFAST CF-E120A v3
169 DEVICE_PACKAGES := rssileds kmod-leds-gpio -uboot-envtools
172 TARGET_DEVICES += comfast_cf-e120a-v3
174 define Device/dlink_dir-825-b1
176 DEVICE_TITLE := D-LINK DIR-825 B1
178 IMAGE/sysupgrade.bin := append-kernel | append-rootfs | pad-rootfs | append-metadata | check-size $$$$(IMAGE_SIZE)
179 DEVICE_PACKAGES := kmod-usb-core kmod-usb-ohci kmod-usb2 kmod-usb-ledtrig-usbport kmod-leds-reset kmod-owl-loader
180 SUPPORTED_DEVICES += dir-825-b1
182 TARGET_DEVICES += dlink_dir-825-b1
184 define Device/dlink_dir-825-c1
186 DEVICE_TITLE := D-LINK DIR-825 C1
187 DEVICE_PACKAGES := kmod-usb-core kmod-usb2 kmod-usb-ledtrig-usbport kmod-leds-reset kmod-owl-loader
188 SUPPORTED_DEVICES += dir-825-c1
190 IMAGES := factory.bin sysupgrade.bin
191 IMAGE/default := append-kernel | pad-to $$$$(BLOCKSIZE) | append-rootfs | pad-rootfs
192 IMAGE/factory.bin := $$(IMAGE/default) | pad-offset $$$$(IMAGE_SIZE) 26 | \
193 append-string 00DB120AR9344-RT-101214-00 | check-size $$$$(IMAGE_SIZE)
194 IMAGE/sysupgrade.bin := $$(IMAGE/default) | append-metadata | check-size $$$$(IMAGE_SIZE)
196 TARGET_DEVICES += dlink_dir-825-c1
198 define Device/dlink_dir-835-a1
200 DEVICE_TITLE := D-LINK DIR-835 A1
201 DEVICE_PACKAGES := kmod-usb-core kmod-usb2 kmod-leds-reset kmod-owl-loader
202 SUPPORTED_DEVICES += dir-835-a1
204 IMAGES := factory.bin sysupgrade.bin
205 IMAGE/default := append-kernel | pad-to $$$$(BLOCKSIZE) | append-rootfs | pad-rootfs
206 IMAGE/factory.bin := $$(IMAGE/default) | pad-offset $$$$(IMAGE_SIZE) 26 | \
207 append-string 00DB120AR9344-RT-101214-00 | check-size $$$$(IMAGE_SIZE)
208 IMAGE/sysupgrade.bin := $$(IMAGE/default) | append-metadata | check-size $$$$(IMAGE_SIZE)
210 TARGET_DEVICES += dlink_dir-835-a1
212 define Device/elecom_wrc-300ghbk2-i
214 DEVICE_TITLE := ELECOM WRC-300GHBK2-I
216 KERNEL_INITRAMFS := $$(KERNEL) | pad-to 2 | \
217 add-elecom-factory-initramfs RN51 WRC-300GHBK2-I
219 TARGET_DEVICES += elecom_wrc-300ghbk2-i
221 define Device/embeddedwireless_dorin
223 DEVICE_TITLE := Embedded Wireless Dorin
224 DEVICE_PACKAGES := kmod-usb-chipidea2
227 TARGET_DEVICES += embeddedwireless_dorin
229 define Device/etactica_eg200
231 DEVICE_TITLE := eTactica EG200
232 DEVICE_PACKAGES := kmod-usb-chipidea2 kmod-ledtrig-oneshot \
233 kmod-usb-serial kmod-usb-serial-ftdi kmod-usb-storage kmod-fs-ext4
234 SUPPORTED_DEVICES += rme-eg200
236 TARGET_DEVICES += etactica_eg200
238 define Device/glinet_gl-ar150
240 DEVICE_TITLE := GL.iNet GL-AR150
241 DEVICE_PACKAGES := kmod-usb-chipidea2
243 SUPPORTED_DEVICES += gl-ar150
245 TARGET_DEVICES += glinet_gl-ar150
247 define Device/glinet_gl-ar300m-nor
249 DEVICE_TITLE := GL.iNet GL-AR300M
250 DEVICE_PACKAGES := kmod-usb-core kmod-usb2
252 SUPPORTED_DEVICES += gl-ar300m
254 TARGET_DEVICES += glinet_gl-ar300m-nor
256 define Device/glinet_gl-ar750s
258 DEVICE_TITLE := GL.iNet GL-AR750S
259 DEVICE_PACKAGES := kmod-usb2
261 SUPPORTED_DEVICES += gl-ar750s
263 TARGET_DEVICES += glinet_gl-ar750s
265 define Device/glinet_gl-x750
267 DEVICE_TITLE := GL.iNet GL-X750
268 DEVICE_PACKAGES := kmod-usb-core kmod-usb2
271 TARGET_DEVICES += glinet_gl-x750
273 define Device/iodata_etg3-r
275 DEVICE_TITLE := I-O DATA ETG3-R
278 TARGET_DEVICES += iodata_etg3-r
280 define Device/iodata_wn-ag300dgr
282 DEVICE_TITLE := I-O DATA WN-AG300DGR
284 IMAGES += factory.bin
285 IMAGE/factory.bin := append-kernel | pad-to $$$$(BLOCKSIZE) | \
286 append-rootfs | pad-rootfs | check-size $$$$(IMAGE_SIZE) | \
287 senao-header -r 0x30a -p 0x47 -t 2
288 DEVICE_PACKAGES := kmod-usb-core kmod-usb2
290 TARGET_DEVICES += iodata_wn-ag300dgr
292 define Device/ocedo_raccoon
294 DEVICE_TITLE := OCEDO Raccoon
296 IMAGE/sysupgrade.bin := append-kernel | append-rootfs | pad-rootfs | append-metadata | check-size $$$$(IMAGE_SIZE)
298 TARGET_DEVICES += ocedo_raccoon
300 define Device/pcs_cap324
302 DEVICE_TITLE := PowerCloud Systems CAP324
304 SUPPORTED_DEVICES += cap324
306 TARGET_DEVICES += pcs_cap324
308 define Device/pcs_cr3000
310 DEVICE_TITLE := PowerCloud Systems CR3000
312 SUPPORTED_DEVICES += cr3000
314 TARGET_DEVICES += pcs_cr3000
316 define Device/pcs_cr5000
318 DEVICE_TITLE := PowerCloud Systems CR5000
319 DEVICE_PACKAGES := kmod-usb2 kmod-usb-core
321 SUPPORTED_DEVICES += cr5000
323 TARGET_DEVICES += pcs_cr5000
325 define Device/netgear_wndr3x00
327 KERNEL := kernel-bin | append-dtb | lzma -d20 | netgear-uImage lzma
328 IMAGES += factory.img
329 IMAGE/default := append-kernel | pad-to $$$$(BLOCKSIZE) | netgear-squashfs | append-rootfs | pad-rootfs
330 IMAGE/sysupgrade.bin := $$(IMAGE/default) | append-metadata | check-size $$$$(IMAGE_SIZE)
331 IMAGE/factory.img := $$(IMAGE/default) | netgear-dni | check-size $$$$(IMAGE_SIZE)
332 DEVICE_PACKAGES := kmod-usb-core kmod-usb-ohci kmod-usb2 kmod-usb-ledtrig-usbport kmod-leds-reset kmod-owl-loader
335 define Device/netgear_wndr3700
336 $(Device/netgear_wndr3x00)
337 DEVICE_TITLE := NETGEAR WNDR3700
338 NETGEAR_KERNEL_MAGIC := 0x33373030
339 NETGEAR_BOARD_ID := WNDR3700
341 IMAGES += factory-NA.img
342 IMAGE/factory-NA.img := $$(IMAGE/default) | netgear-dni NA | check-size $$$$(IMAGE_SIZE)
343 SUPPORTED_DEVICES += wndr3700
345 TARGET_DEVICES += netgear_wndr3700
347 define Device/netgear_wndr3700v2
348 $(Device/netgear_wndr3x00)
349 DEVICE_TITLE := NETGEAR WNDR3700v2
350 NETGEAR_KERNEL_MAGIC := 0x33373031
351 NETGEAR_BOARD_ID := WNDR3700v2
352 NETGEAR_HW_ID := 29763654+16+64
354 SUPPORTED_DEVICES += wndr3700v2
356 TARGET_DEVICES += netgear_wndr3700v2
358 define Device/pisen_wmm003n
359 $(Device/tplink-8mlzma)
361 DEVICE_TITLE := Pisen WMM003N (Cloud Easy Power)
362 DEVICE_PACKAGES := kmod-usb-core kmod-usb2 kmod-usb-chipidea2
363 TPLINK_HWID := 0x07030101
365 TARGET_DEVICES += pisen_wmm003n
367 define Device/netgear_wndr3800
368 $(Device/netgear_wndr3x00)
369 DEVICE_TITLE := NETGEAR WNDR3800
370 NETGEAR_KERNEL_MAGIC := 0x33373031
371 NETGEAR_BOARD_ID := WNDR3800
372 NETGEAR_HW_ID := 29763654+16+128
374 SUPPORTED_DEVICES += wndr3800
376 TARGET_DEVICES += netgear_wndr3800
378 define Device/rosinson_wr818
380 DEVICE_TITLE := ROSINSON WR818
382 DEVICE_PACKAGES := kmod-usb-core kmod-usb2 kmod-usb-ledtrig-usbport
384 TARGET_DEVICES += rosinson_wr818
386 define Device/wd_mynet-wifi-rangeextender
388 DEVICE_TITLE := Western Digital My Net Wi-Fi Range Extender
389 DEVICE_PACKAGES := rssileds nvram -swconfig
391 ADDPATTERN_ID := mynet-rext
392 ADDPATTERN_VERSION := 1.00.01
393 IMAGE/sysupgrade.bin := append-rootfs | pad-rootfs | cybertan-trx | \
394 addpattern | append-metadata
395 SUPPORTED_DEVICES += mynet-rext
397 TARGET_DEVICES += wd_mynet-wifi-rangeextender
399 define Device/winchannel_wb2000
401 DEVICE_TITLE := Winchannel WB2000
403 DEVICE_PACKAGES := kmod-i2c-core kmod-i2c-gpio kmod-rtc-ds1307 kmod-usb2 kmod-usb-ledtrig-usbport
405 TARGET_DEVICES += winchannel_wb2000
407 define Device/xiaomi_mi-router-4q
409 DEVICE_TITLE := Xiaomi Mi Router 4Q
412 TARGET_DEVICES += xiaomi_mi-router-4q