generic.mk 21 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671
  1. include ./common-buffalo.mk
  2. include ./common-netgear.mk
  3. DEVICE_VARS += ADDPATTERN_ID ADDPATTERN_VERSION
  4. DEVICE_VARS += SEAMA_SIGNATURE SEAMA_MTDBLOCK
  5. DEVICE_VARS += KERNEL_INITRAMFS_PREFIX
  6. define Build/cybertan-trx
  7. @echo -n '' > [email protected]
  8. -$(STAGING_DIR_HOST)/bin/trx -o [email protected] \
  9. -f $(IMAGE_KERNEL) -F [email protected] \
  10. -x 32 -a 0x10000 -x -32 -f $@
  11. -mv "[email protected]" "$@"
  12. -rm [email protected]
  13. endef
  14. define Build/addpattern
  15. -$(STAGING_DIR_HOST)/bin/addpattern -B $(ADDPATTERN_ID) \
  16. -v v$(ADDPATTERN_VERSION) -i $@ -o [email protected]
  17. -mv "[email protected]" "$@"
  18. endef
  19. define Build/add-elecom-factory-initramfs
  20. $(eval edimax_model=$(word 1,$(1)))
  21. $(eval product=$(word 2,$(1)))
  22. $(STAGING_DIR_HOST)/bin/mkedimaximg \
  23. -b -s CSYS -m $(edimax_model) \
  24. -f 0x70000 -S 0x01100000 \
  25. -i $@ -o [email protected]
  26. ( \
  27. echo -n -e "ELECOM\x00\x00$(product)" | dd bs=40 count=1 conv=sync; \
  28. echo -n "0.00" | dd bs=16 count=1 conv=sync; \
  29. dd [email protected]; \
  30. ) > [email protected]
  31. if [ "$$(stat -c%s [email protected])" -le $$(($(subst k,* 1024,$(subst m, * 1024k,$(IMAGE_SIZE))))) ]; then \
  32. mv [email protected] $(BIN_DIR)/$(KERNEL_INITRAMFS_PREFIX)-factory.bin; \
  33. else \
  34. echo "WARNING: initramfs kernel image too big, cannot generate factory image" >&2; \
  35. fi
  36. endef
  37. define Build/nec-enc
  38. $(STAGING_DIR_HOST)/bin/nec-enc \
  39. -i $@ -o [email protected] -k $(1)
  40. mv [email protected] $@
  41. endef
  42. define Build/nec-fw
  43. ( stat -c%s $@ | tr -d "\n" | dd bs=16 count=1 conv=sync; ) >> $@
  44. ( \
  45. echo -n -e "$(1)" | dd bs=16 count=1 conv=sync; \
  46. echo -n "0.0.00" | dd bs=16 count=1 conv=sync; \
  47. dd if=$@; \
  48. ) > [email protected]
  49. mv [email protected] $@
  50. endef
  51. define Device/seama
  52. KERNEL := kernel-bin | append-dtb | relocate-kernel | lzma
  53. KERNEL_INITRAMFS := $$(KERNEL) | seama
  54. IMAGES += factory.bin
  55. SEAMA_MTDBLOCK := 1
  56. # 64 bytes offset:
  57. # - 28 bytes seama_header
  58. # - 36 bytes of META data (4-bytes aligned)
  59. IMAGE/default := append-kernel | pad-offset $$$$(BLOCKSIZE) 64 | append-rootfs
  60. IMAGE/sysupgrade.bin := \
  61. $$(IMAGE/default) | seama | pad-rootfs | append-metadata | check-size $$$$(IMAGE_SIZE)
  62. IMAGE/factory.bin := \
  63. $$(IMAGE/default) | pad-rootfs -x 64 | seama | seama-seal | check-size $$$$(IMAGE_SIZE)
  64. SEAMA_SIGNATURE :=
  65. endef
  66. define Device/avm_fritz300e
  67. ATH_SOC := ar7242
  68. DEVICE_TITLE := AVM FRITZ!WLAN Repeater 300E
  69. KERNEL := kernel-bin | append-dtb | lzma | eva-image
  70. KERNEL_INITRAMFS := $$(KERNEL)
  71. IMAGE_SIZE := 15232k
  72. IMAGE/sysupgrade.bin := append-kernel | pad-to 64k | \
  73. append-squashfs-fakeroot-be | pad-to 256 | \
  74. append-rootfs | pad-rootfs | append-metadata | check-size $$$$(IMAGE_SIZE)
  75. DEVICE_PACKAGES := fritz-tffs rssileds -swconfig
  76. endef
  77. TARGET_DEVICES += avm_fritz300e
  78. define Device/avm_fritz4020
  79. ATH_SOC := qca9561
  80. DEVICE_TITLE := AVM FRITZ!Box 4020
  81. IMAGE_SIZE := 15232k
  82. KERNEL := kernel-bin | append-dtb | lzma | eva-image
  83. KERNEL_INITRAMFS := $$(KERNEL)
  84. IMAGE/sysupgrade.bin := append-kernel | pad-to 64k | \
  85. append-squashfs-fakeroot-be | pad-to 256 | \
  86. append-rootfs | pad-rootfs | append-metadata | check-size $$$$(IMAGE_SIZE)
  87. DEVICE_PACKAGES := fritz-tffs
  88. SUPPORTED_DEVICES += fritz4020
  89. endef
  90. TARGET_DEVICES += avm_fritz4020
  91. define Device/buffalo_bhr-4grv
  92. ATH_SOC := ar7242
  93. DEVICE_TITLE := Buffalo BHR-4GRV
  94. DEVICE_PACKAGES := kmod-usb-core kmod-usb2 kmod-usb-ledtrig-usbport
  95. IMAGE_SIZE := 32256k
  96. IMAGES += factory.bin tftp.bin
  97. IMAGE/default := append-kernel | pad-to $$$$(BLOCKSIZE) | append-rootfs | pad-rootfs | check-size $$$$(IMAGE_SIZE)
  98. IMAGE/factory.bin := $$(IMAGE/default) | buffalo-enc BHR-4GRV 1.99 | buffalo-tag BHR-4GRV 3
  99. IMAGE/tftp.bin := $$(IMAGE/default) | buffalo-tftp-header
  100. SUPPORTED_DEVICES += wzr-hp-g450h
  101. endef
  102. TARGET_DEVICES += buffalo_bhr-4grv
  103. define Device/buffalo_bhr-4grv2
  104. ATH_SOC := qca9557
  105. DEVICE_TITLE := Buffalo BHR-4GRV2
  106. IMAGE_SIZE := 16000k
  107. endef
  108. TARGET_DEVICES += buffalo_bhr-4grv2
  109. define Device/buffalo_wzr-hp-ag300h
  110. ATH_SOC := ar7161
  111. DEVICE_TITLE := Buffalo WZR-HP-AG300H
  112. IMAGE_SIZE := 32256k
  113. IMAGES += factory.bin tftp.bin
  114. IMAGE/default := append-kernel | pad-to $$$$(BLOCKSIZE) | append-rootfs | pad-rootfs | check-size $$$$(IMAGE_SIZE)
  115. IMAGE/factory.bin := $$(IMAGE/default) | buffalo-enc WZR-HP-AG300H 1.99 | buffalo-tag WZR-HP-AG300H 3
  116. IMAGE/tftp.bin := $$(IMAGE/default) | buffalo-tftp-header
  117. DEVICE_PACKAGES := kmod-usb-core kmod-usb-ohci kmod-usb2 kmod-usb-ledtrig-usbport kmod-leds-reset kmod-owl-loader
  118. SUPPORTED_DEVICES += wzr-hp-ag300h
  119. endef
  120. TARGET_DEVICES += buffalo_wzr-hp-ag300h
  121. define Device/buffalo_wzr-hp-g302h-a1a0
  122. ATH_SOC := ar7242
  123. DEVICE_TITLE := Buffalo WZR-HP-G302H A1A0
  124. DEVICE_PACKAGES := kmod-usb-core kmod-usb2 kmod-usb-ledtrig-usbport
  125. IMAGE_SIZE := 32128k
  126. IMAGES += factory.bin tftp.bin
  127. IMAGE/default := append-kernel | pad-to $$$$(BLOCKSIZE) | append-rootfs | pad-rootfs | check-size $$$$(IMAGE_SIZE)
  128. IMAGE/factory.bin := $$(IMAGE/default) | buffalo-enc WZR-HP-G302H 1.99 | buffalo-tag WZR-HP-G302H 4
  129. IMAGE/tftp.bin := $$(IMAGE/default) | buffalo-tftp-header
  130. SUPPORTED_DEVICES += wzr-hp-g300nh2
  131. endef
  132. TARGET_DEVICES += buffalo_wzr-hp-g302h-a1a0
  133. define Device/buffalo_wzr-hp-g450h
  134. ATH_SOC := ar7242
  135. DEVICE_TITLE := Buffalo WZR-HP-G450H/WZR-450HP
  136. DEVICE_PACKAGES := kmod-usb-core kmod-usb2 kmod-usb-ledtrig-usbport
  137. IMAGE_SIZE := 32256k
  138. IMAGES += factory.bin tftp.bin
  139. IMAGE/default := append-kernel | pad-to $$$$(BLOCKSIZE) | append-rootfs | pad-rootfs | check-size $$$$(IMAGE_SIZE)
  140. IMAGE/factory.bin := $$(IMAGE/default) | buffalo-enc WZR-HP-G450H 1.99 | buffalo-tag WZR-HP-G450H 3
  141. IMAGE/tftp.bin := $$(IMAGE/default) | buffalo-tftp-header
  142. SUPPORTED_DEVICES += wzr-hp-g450h
  143. endef
  144. TARGET_DEVICES += buffalo_wzr-hp-g450h
  145. define Device/comfast_cf-e110n-v2
  146. ATH_SOC := qca9533
  147. DEVICE_TITLE := COMFAST CF-E110N v2
  148. DEVICE_PACKAGES := rssileds kmod-leds-gpio -swconfig -uboot-envtools
  149. IMAGE_SIZE := 16192k
  150. endef
  151. TARGET_DEVICES += comfast_cf-e110n-v2
  152. define Device/comfast_cf-e120a-v3
  153. ATH_SOC := ar9344
  154. DEVICE_TITLE := COMFAST CF-E120A v3
  155. DEVICE_PACKAGES := rssileds kmod-leds-gpio -uboot-envtools
  156. IMAGE_SIZE := 8000k
  157. endef
  158. TARGET_DEVICES += comfast_cf-e120a-v3
  159. define Device/comfast_cf-e5
  160. ATH_SOC := qca9531
  161. DEVICE_TITLE := COMFAST CF-E5/E7
  162. DEVICE_PACKAGES := rssileds kmod-leds-gpio kmod-usb-core kmod-usb2 kmod-usb-net \
  163. kmod-usb-net-qmi-wwan -swconfig -uboot-envtools
  164. IMAGE_SIZE := 16192k
  165. endef
  166. TARGET_DEVICES += comfast_cf-e5
  167. define Device/devolo_dvl1200e
  168. ATH_SOC := qca9558
  169. DEVICE_TITLE := devolo WiFi pro 1200e
  170. DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca988x-ct
  171. IMAGE_SIZE := 15936k
  172. endef
  173. TARGET_DEVICES += devolo_dvl1200e
  174. define Device/devolo_dvl1200i
  175. ATH_SOC := qca9558
  176. DEVICE_TITLE := devolo WiFi pro 1200i
  177. DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca988x-ct
  178. IMAGE_SIZE := 15936k
  179. endef
  180. TARGET_DEVICES += devolo_dvl1200i
  181. define Device/devolo_dvl1750c
  182. ATH_SOC := qca9558
  183. DEVICE_TITLE := devolo WiFi pro 1750c
  184. DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca988x-ct
  185. IMAGE_SIZE := 15936k
  186. endef
  187. TARGET_DEVICES += devolo_dvl1750c
  188. define Device/devolo_dvl1750e
  189. ATH_SOC := qca9558
  190. DEVICE_TITLE := devolo WiFi pro 1750e
  191. DEVICE_PACKAGES := kmod-usb2 kmod-ath10k-ct ath10k-firmware-qca988x-ct
  192. IMAGE_SIZE := 15936k
  193. endef
  194. TARGET_DEVICES += devolo_dvl1750e
  195. define Device/devolo_dvl1750i
  196. ATH_SOC := qca9558
  197. DEVICE_TITLE := devolo WiFi pro 1750i
  198. DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca988x-ct
  199. IMAGE_SIZE := 15936k
  200. endef
  201. TARGET_DEVICES += devolo_dvl1750i
  202. define Device/dlink_dir-825-b1
  203. ATH_SOC := ar7161
  204. DEVICE_TITLE := D-LINK DIR-825 B1
  205. IMAGE_SIZE := 6208k
  206. IMAGE/sysupgrade.bin := append-kernel | append-rootfs | pad-rootfs | append-metadata | check-size $$$$(IMAGE_SIZE)
  207. DEVICE_PACKAGES := kmod-usb-core kmod-usb-ohci kmod-usb2 kmod-usb-ledtrig-usbport kmod-leds-reset kmod-owl-loader
  208. SUPPORTED_DEVICES += dir-825-b1
  209. endef
  210. TARGET_DEVICES += dlink_dir-825-b1
  211. define Device/dlink_dir-825-c1
  212. ATH_SOC := ar9344
  213. DEVICE_TITLE := D-LINK DIR-825 C1
  214. DEVICE_PACKAGES := kmod-usb-core kmod-usb2 kmod-usb-ledtrig-usbport kmod-leds-reset kmod-owl-loader
  215. SUPPORTED_DEVICES += dir-825-c1
  216. IMAGE_SIZE := 15936k
  217. IMAGES := factory.bin sysupgrade.bin
  218. IMAGE/default := append-kernel | pad-to $$$$(BLOCKSIZE) | append-rootfs | pad-rootfs
  219. IMAGE/factory.bin := $$(IMAGE/default) | pad-offset $$$$(IMAGE_SIZE) 26 | \
  220. append-string 00DB120AR9344-RT-101214-00 | check-size $$$$(IMAGE_SIZE)
  221. IMAGE/sysupgrade.bin := $$(IMAGE/default) | append-metadata | check-size $$$$(IMAGE_SIZE)
  222. endef
  223. TARGET_DEVICES += dlink_dir-825-c1
  224. define Device/dlink_dir-835-a1
  225. ATH_SOC := ar9344
  226. DEVICE_TITLE := D-LINK DIR-835 A1
  227. DEVICE_PACKAGES := kmod-usb-core kmod-usb2 kmod-leds-reset kmod-owl-loader
  228. SUPPORTED_DEVICES += dir-835-a1
  229. IMAGE_SIZE := 15936k
  230. IMAGES := factory.bin sysupgrade.bin
  231. IMAGE/default := append-kernel | pad-to $$$$(BLOCKSIZE) | append-rootfs | pad-rootfs
  232. IMAGE/factory.bin := $$(IMAGE/default) | pad-offset $$$$(IMAGE_SIZE) 26 | \
  233. append-string 00DB120AR9344-RT-101214-00 | check-size $$$$(IMAGE_SIZE)
  234. IMAGE/sysupgrade.bin := $$(IMAGE/default) | append-metadata | check-size $$$$(IMAGE_SIZE)
  235. endef
  236. TARGET_DEVICES += dlink_dir-835-a1
  237. define Device/dlink_dir-859-a1
  238. $(Device/seama)
  239. ATH_SOC := qca9563
  240. DEVICE_TITLE := D-LINK DIR-859 A1
  241. IMAGE_SIZE := 15872k
  242. DEVICE_PACKAGES := kmod-usb-core kmod-usb2 kmod-ath10k-ct ath10k-firmware-qca988x-ct
  243. SEAMA_SIGNATURE := wrgac37_dlink.2013gui_dir859
  244. SUPPORTED_DEVICES += dir-859-a1
  245. endef
  246. TARGET_DEVICES += dlink_dir-859-a1
  247. define Device/elecom_wrc-1750ghbk2-i
  248. ATH_SOC := qca9563
  249. DEVICE_TITLE := ELECOM WRC-1750GHBK2-I/C
  250. IMAGE_SIZE := 15808k
  251. KERNEL_INITRAMFS := $$(KERNEL) | pad-to 2 | \
  252. add-elecom-factory-initramfs RN68 WRC-1750GHBK2
  253. DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca988x-ct
  254. endef
  255. TARGET_DEVICES += elecom_wrc-1750ghbk2-i
  256. define Device/elecom_wrc-300ghbk2-i
  257. ATH_SOC := qca9563
  258. DEVICE_TITLE := ELECOM WRC-300GHBK2-I
  259. IMAGE_SIZE := 7616k
  260. KERNEL_INITRAMFS := $$(KERNEL) | pad-to 2 | \
  261. add-elecom-factory-initramfs RN51 WRC-300GHBK2-I
  262. endef
  263. TARGET_DEVICES += elecom_wrc-300ghbk2-i
  264. define Device/embeddedwireless_dorin
  265. ATH_SOC := ar9331
  266. DEVICE_TITLE := Embedded Wireless Dorin
  267. DEVICE_PACKAGES := kmod-usb-chipidea2
  268. IMAGE_SIZE := 16000k
  269. endef
  270. TARGET_DEVICES += embeddedwireless_dorin
  271. define Device/engenius_epg5000
  272. ATH_SOC := qca9558
  273. DEVICE_TITLE := EnGenius EPG5000
  274. DEVICE_PACKAGES := ath10k-firmware-qca988x-ct kmod-ath10k-ct kmod-usb2
  275. IMAGE_SIZE := 14656k
  276. IMAGES += factory.dlf
  277. IMAGE/factory.dlf := append-kernel | pad-to $$$$(BLOCKSIZE) | \
  278. append-rootfs | pad-rootfs | check-size $$$$(IMAGE_SIZE) | \
  279. senao-header -r 0x101 -p 0x71 -t 2
  280. SUPPORTED_DEVICES += epg5000
  281. endef
  282. TARGET_DEVICES += engenius_epg5000
  283. define Device/engenius_ews511ap
  284. ATH_SOC := qca9531
  285. DEVICE_TITLE := EnGenius EWS511AP
  286. DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca9887-ct
  287. IMAGE_SIZE := 16000k
  288. endef
  289. TARGET_DEVICES += engenius_ews511ap
  290. define Device/etactica_eg200
  291. ATH_SOC := ar9331
  292. DEVICE_TITLE := eTactica EG200
  293. DEVICE_PACKAGES := kmod-usb-chipidea2 kmod-ledtrig-oneshot \
  294. kmod-usb-serial kmod-usb-serial-ftdi kmod-usb-storage kmod-fs-ext4
  295. SUPPORTED_DEVICES += rme-eg200
  296. endef
  297. TARGET_DEVICES += etactica_eg200
  298. define Device/glinet_gl-ar150
  299. ATH_SOC := ar9330
  300. DEVICE_TITLE := GL.iNet GL-AR150
  301. DEVICE_PACKAGES := kmod-usb-chipidea2
  302. IMAGE_SIZE := 16000k
  303. SUPPORTED_DEVICES += gl-ar150
  304. endef
  305. TARGET_DEVICES += glinet_gl-ar150
  306. define Device/glinet_gl-ar300m-common-nor
  307. ATH_SOC := qca9531
  308. DEVICE_PACKAGES := kmod-usb-core kmod-usb2
  309. IMAGE_SIZE := 16000k
  310. SUPPORTED_DEVICES += gl-ar300m
  311. endef
  312. define Device/glinet_gl-ar300m-lite
  313. $(Device/glinet_gl-ar300m-common-nor)
  314. DEVICE_TITLE := GL.iNet GL-AR300M-Lite
  315. endef
  316. TARGET_DEVICES += glinet_gl-ar300m-lite
  317. define Device/glinet_gl-ar300m-nor
  318. $(Device/glinet_gl-ar300m-common-nor)
  319. DEVICE_TITLE := GL.iNet GL-AR300M
  320. endef
  321. TARGET_DEVICES += glinet_gl-ar300m-nor
  322. define Device/glinet_gl-ar750s
  323. ATH_SOC := qca9563
  324. DEVICE_TITLE := GL.iNet GL-AR750S
  325. DEVICE_PACKAGES := kmod-usb2 kmod-ath10k-ct ath10k-firmware-qca988x-ct
  326. IMAGE_SIZE := 16000k
  327. SUPPORTED_DEVICES += gl-ar750s
  328. endef
  329. TARGET_DEVICES += glinet_gl-ar750s
  330. define Device/glinet_gl-x750
  331. ATH_SOC := qca9531
  332. DEVICE_TITLE := GL.iNet GL-X750
  333. DEVICE_PACKAGES := kmod-usb-core kmod-usb2 kmod-ath10k-ct ath10k-firmware-qca9887-ct
  334. IMAGE_SIZE := 16000k
  335. endef
  336. TARGET_DEVICES += glinet_gl-x750
  337. define Device/iodata_etg3-r
  338. ATH_SOC := ar9342
  339. DEVICE_TITLE := I-O DATA ETG3-R
  340. IMAGE_SIZE := 7680k
  341. endef
  342. TARGET_DEVICES += iodata_etg3-r
  343. define Device/iodata_wn-ac1167dgr
  344. ATH_SOC := qca9557
  345. DEVICE_TITLE := I-O DATA WN-AC1167DGR
  346. IMAGE_SIZE := 14656k
  347. IMAGES += factory.bin
  348. IMAGE/factory.bin := append-kernel | pad-to $$$$(BLOCKSIZE) | \
  349. append-rootfs | pad-rootfs | check-size $$$$(IMAGE_SIZE) | \
  350. senao-header -r 0x30a -p 0x61 -t 2
  351. DEVICE_PACKAGES := kmod-usb-core kmod-usb2 kmod-ath10k-ct ath10k-firmware-qca988x-ct
  352. endef
  353. TARGET_DEVICES += iodata_wn-ac1167dgr
  354. define Device/iodata_wn-ac1600dgr
  355. ATH_SOC := qca9557
  356. DEVICE_TITLE := I-O DATA WN-AC1600DGR
  357. IMAGE_SIZE := 14656k
  358. IMAGES += factory.bin
  359. IMAGE/factory.bin := append-kernel | pad-to $$$$(BLOCKSIZE) | \
  360. append-rootfs | pad-rootfs | check-size $$$$(IMAGE_SIZE) | \
  361. senao-header -r 0x30a -p 0x60 -t 2 -v 200
  362. DEVICE_PACKAGES := kmod-usb-core kmod-usb2 kmod-ath10k-ct ath10k-firmware-qca988x-ct
  363. endef
  364. TARGET_DEVICES += iodata_wn-ac1600dgr
  365. define Device/iodata_wn-ac1600dgr2
  366. ATH_SOC := qca9557
  367. DEVICE_TITLE := I-O DATA WN-AC1600DGR2
  368. IMAGE_SIZE := 14656k
  369. IMAGES += factory.bin
  370. IMAGE/factory.bin := append-kernel | pad-to $$$$(BLOCKSIZE) | \
  371. append-rootfs | pad-rootfs | check-size $$$$(IMAGE_SIZE) | \
  372. senao-header -r 0x30a -p 0x60 -t 2 -v 200
  373. DEVICE_PACKAGES := kmod-usb-core kmod-usb2 kmod-ath10k-ct ath10k-firmware-qca988x-ct
  374. endef
  375. TARGET_DEVICES += iodata_wn-ac1600dgr2
  376. define Device/iodata_wn-ag300dgr
  377. ATH_SOC := ar1022
  378. DEVICE_TITLE := I-O DATA WN-AG300DGR
  379. IMAGE_SIZE := 15424k
  380. IMAGES += factory.bin
  381. IMAGE/factory.bin := append-kernel | pad-to $$$$(BLOCKSIZE) | \
  382. append-rootfs | pad-rootfs | check-size $$$$(IMAGE_SIZE) | \
  383. senao-header -r 0x30a -p 0x47 -t 2
  384. DEVICE_PACKAGES := kmod-usb-core kmod-usb2
  385. endef
  386. TARGET_DEVICES += iodata_wn-ag300dgr
  387. define Device/jjplus_ja76pf2
  388. ATH_SOC := ar7161
  389. DEVICE_TITLE := jjPlus JA76PF2
  390. DEVICE_PACKAGES += -kmod-ath9k -swconfig -wpad-mini -uboot-envtools fconfig
  391. IMAGE/sysupgrade.bin := append-rootfs | pad-rootfs | combined-image | check-size $$$$(IMAGE_SIZE)
  392. # IMAGE/sysupgrade.bin := append-rootfs | pad-rootfs | check-size $$$$(IMAGE_SIZE) | sysupgrade-tar rootfs=$$$$@ | append-metadata
  393. KERNEL := kernel-bin | append-dtb | lzma | pad-to $$(BLOCKSIZE)
  394. KERNEL_INITRAMFS := kernel-bin | append-dtb
  395. IMAGE_SIZE := 16000k
  396. endef
  397. TARGET_DEVICES += jjplus_ja76pf2
  398. define Device/librerouter_librerouter-v1
  399. ATH_SOC := qca9558
  400. DEVICE_TITLE := LibreRouter v1
  401. IMAGE_SIZE := 7936k
  402. DEVICE_PACKAGES := kmod-usb-core kmod-usb2
  403. endef
  404. TARGET_DEVICES += librerouter_librerouter-v1
  405. define Device/nec_wg1200cr
  406. ATH_SOC := qca9563
  407. DEVICE_TITLE := NEC Aterm WG1200CR
  408. IMAGE_SIZE := 7616k
  409. SEAMA_MTDBLOCK := 6
  410. SEAMA_SIGNATURE := wrgac72_necpf.2016gui_wg1200cr
  411. IMAGES += factory.bin
  412. IMAGE/default := \
  413. append-kernel | pad-offset $$$$(BLOCKSIZE) 64 | append-rootfs
  414. IMAGE/sysupgrade.bin := \
  415. $$(IMAGE/default) | seama | pad-rootfs | append-metadata | check-size $$$$(IMAGE_SIZE)
  416. IMAGE/factory.bin := \
  417. $$(IMAGE/default) | pad-rootfs -x 64 | seama | seama-seal | nec-enc 9gsiy9nzep452pad | \
  418. check-size $$$$(IMAGE_SIZE)
  419. DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca9888-ct
  420. endef
  421. TARGET_DEVICES += nec_wg1200cr
  422. define Device/nec_wg800hp
  423. ATH_SOC := qca9563
  424. DEVICE_TITLE := NEC Aterm WG800HP
  425. IMAGE_SIZE := 7104k
  426. IMAGES += factory.bin
  427. IMAGE/factory.bin := append-kernel | pad-to $$$$(BLOCKSIZE) | \
  428. append-rootfs | pad-rootfs | check-size $$$$(IMAGE_SIZE) | \
  429. xor-image -p 6A57190601121E4C004C1E1201061957 -x | \
  430. nec-fw LASER_ATERM
  431. DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca9887-ct-htt
  432. endef
  433. TARGET_DEVICES += nec_wg800hp
  434. define Device/ocedo_koala
  435. ATH_SOC := qca9558
  436. DEVICE_TITLE := OCEDO Koala
  437. DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca988x-ct
  438. SUPPORTED_DEVICES += koala
  439. IMAGE_SIZE := 7424k
  440. IMAGE/sysupgrade.bin := append-kernel | append-rootfs | pad-rootfs | append-metadata | check-size $$$$(IMAGE_SIZE)
  441. endef
  442. TARGET_DEVICES += ocedo_koala
  443. define Device/ocedo_raccoon
  444. ATH_SOC := ar9344
  445. DEVICE_TITLE := OCEDO Raccoon
  446. IMAGE_SIZE := 7424k
  447. IMAGE/sysupgrade.bin := append-kernel | append-rootfs | pad-rootfs | append-metadata | check-size $$$$(IMAGE_SIZE)
  448. endef
  449. TARGET_DEVICES += ocedo_raccoon
  450. define Device/ocedo_ursus
  451. ATH_SOC := qca9558
  452. DEVICE_TITLE := OCEDO Ursus
  453. DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca988x-ct
  454. IMAGE_SIZE := 7424k
  455. IMAGE/sysupgrade.bin := append-kernel | append-rootfs | pad-rootfs | append-metadata | check-size $$$$(IMAGE_SIZE)
  456. endef
  457. TARGET_DEVICES += ocedo_ursus
  458. define Device/openmesh_om5p-ac-v2
  459. ATH_SOC := qca9558
  460. DEVICE_TITLE := OpenMesh OM5P-AC v2
  461. DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca988x-ct om-watchdog
  462. IMAGE_SIZE := 7808k
  463. SUPPORTED_DEVICES += om5p-acv2
  464. endef
  465. TARGET_DEVICES += openmesh_om5p-ac-v2
  466. define Device/pcs_cap324
  467. ATH_SOC := ar9344
  468. DEVICE_TITLE := PowerCloud Systems CAP324
  469. IMAGE_SIZE := 16000k
  470. SUPPORTED_DEVICES += cap324
  471. endef
  472. TARGET_DEVICES += pcs_cap324
  473. define Device/pcs_cr3000
  474. ATH_SOC := ar9341
  475. DEVICE_TITLE := PowerCloud Systems CR3000
  476. IMAGE_SIZE := 7808k
  477. SUPPORTED_DEVICES += cr3000
  478. endef
  479. TARGET_DEVICES += pcs_cr3000
  480. define Device/pcs_cr5000
  481. ATH_SOC := ar9344
  482. DEVICE_TITLE := PowerCloud Systems CR5000
  483. DEVICE_PACKAGES := kmod-usb2 kmod-usb-core
  484. IMAGE_SIZE := 7808k
  485. SUPPORTED_DEVICES += cr5000
  486. endef
  487. TARGET_DEVICES += pcs_cr5000
  488. define Device/netgear_wndr3x00
  489. ATH_SOC := ar7161
  490. IMAGE/default := append-kernel | pad-to $$$$(BLOCKSIZE) | netgear-squashfs | append-rootfs | pad-rootfs
  491. DEVICE_PACKAGES := kmod-usb-core kmod-usb-ohci kmod-usb2 kmod-usb-ledtrig-usbport kmod-leds-reset kmod-owl-loader
  492. $(Device/netgear_ath79)
  493. endef
  494. define Device/netgear_ex7300_ex6400
  495. ATH_SOC := qca9558
  496. NETGEAR_KERNEL_MAGIC := 0x27051956
  497. NETGEAR_BOARD_ID := EX7300series
  498. NETGEAR_HW_ID := 29765104+16+0+128
  499. IMAGE_SIZE := 15552k
  500. IMAGE/default := append-kernel | pad-offset $$$$(BLOCKSIZE) 64 | netgear-rootfs | pad-rootfs
  501. DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca99x0-ct
  502. $(Device/netgear_ath79)
  503. endef
  504. define Device/netgear_ex6400
  505. $(Device/netgear_ex7300_ex6400)
  506. DEVICE_TITLE := NETGEAR EX6400
  507. endef
  508. TARGET_DEVICES += netgear_ex6400
  509. define Device/netgear_ex7300
  510. $(Device/netgear_ex7300_ex6400)
  511. DEVICE_TITLE := NETGEAR EX7300
  512. endef
  513. TARGET_DEVICES += netgear_ex7300
  514. define Device/netgear_wndr3700
  515. $(Device/netgear_wndr3x00)
  516. DEVICE_TITLE := NETGEAR WNDR3700
  517. NETGEAR_KERNEL_MAGIC := 0x33373030
  518. NETGEAR_BOARD_ID := WNDR3700
  519. IMAGE_SIZE := 7680k
  520. IMAGES += factory-NA.img
  521. IMAGE/factory-NA.img := $$(IMAGE/default) | netgear-dni NA | check-size $$$$(IMAGE_SIZE)
  522. SUPPORTED_DEVICES += wndr3700
  523. endef
  524. TARGET_DEVICES += netgear_wndr3700
  525. define Device/netgear_wndr3700v2
  526. $(Device/netgear_wndr3x00)
  527. DEVICE_TITLE := NETGEAR WNDR3700v2
  528. NETGEAR_KERNEL_MAGIC := 0x33373031
  529. NETGEAR_BOARD_ID := WNDR3700v2
  530. NETGEAR_HW_ID := 29763654+16+64
  531. IMAGE_SIZE := 15872k
  532. SUPPORTED_DEVICES += wndr3700v2
  533. endef
  534. TARGET_DEVICES += netgear_wndr3700v2
  535. define Device/pisen_wmm003n
  536. $(Device/tplink-8mlzma)
  537. ATH_SOC := ar9331
  538. DEVICE_TITLE := Pisen WMM003N (Cloud Easy Power)
  539. DEVICE_PACKAGES := kmod-usb-core kmod-usb2 kmod-usb-chipidea2
  540. TPLINK_HWID := 0x07030101
  541. endef
  542. TARGET_DEVICES += pisen_wmm003n
  543. define Device/netgear_wndr3800
  544. $(Device/netgear_wndr3x00)
  545. DEVICE_TITLE := NETGEAR WNDR3800
  546. NETGEAR_KERNEL_MAGIC := 0x33373031
  547. NETGEAR_BOARD_ID := WNDR3800
  548. NETGEAR_HW_ID := 29763654+16+128
  549. IMAGE_SIZE := 15872k
  550. SUPPORTED_DEVICES += wndr3800
  551. endef
  552. TARGET_DEVICES += netgear_wndr3800
  553. define Device/phicomm_k2t
  554. ATH_SOC := qca9563
  555. DEVICE_TITLE := Phicomm K2T
  556. IMAGE_SIZE := 15744k
  557. IMAGE/sysupgrade.bin := append-kernel | append-rootfs | pad-rootfs | append-metadata | check-size $$$$(IMAGE_SIZE)
  558. DEVICE_PACKAGES := kmod-leds-reset kmod-ath10k-ct ath10k-firmware-qca9888-ct
  559. endef
  560. TARGET_DEVICES += phicomm_k2t
  561. define Device/rosinson_wr818
  562. ATH_SOC := qca9563
  563. DEVICE_TITLE := ROSINSON WR818
  564. IMAGE_SIZE := 15872k
  565. DEVICE_PACKAGES := kmod-usb-core kmod-usb2 kmod-usb-ledtrig-usbport
  566. endef
  567. TARGET_DEVICES += rosinson_wr818
  568. define Device/wd_mynet-wifi-rangeextender
  569. ATH_SOC := ar9344
  570. DEVICE_TITLE := Western Digital My Net Wi-Fi Range Extender
  571. DEVICE_PACKAGES := rssileds nvram -swconfig
  572. IMAGE_SIZE := 7808k
  573. ADDPATTERN_ID := mynet-rext
  574. ADDPATTERN_VERSION := 1.00.01
  575. IMAGE/sysupgrade.bin := append-rootfs | pad-rootfs | cybertan-trx | \
  576. addpattern | append-metadata
  577. SUPPORTED_DEVICES += mynet-rext
  578. endef
  579. TARGET_DEVICES += wd_mynet-wifi-rangeextender
  580. define Device/winchannel_wb2000
  581. ATH_SOC := ar9344
  582. DEVICE_TITLE := Winchannel WB2000
  583. IMAGE_SIZE := 15872k
  584. DEVICE_PACKAGES := kmod-i2c-core kmod-i2c-gpio kmod-rtc-ds1307 kmod-usb2 kmod-usb-ledtrig-usbport
  585. endef
  586. TARGET_DEVICES += winchannel_wb2000
  587. define Device/xiaomi_mi-router-4q
  588. ATH_SOC := qca9561
  589. DEVICE_TITLE := Xiaomi Mi Router 4Q
  590. IMAGE_SIZE := 14336k
  591. endef
  592. TARGET_DEVICES += xiaomi_mi-router-4q
  593. define Device/yuncore_a770
  594. ATH_SOC := qca9531
  595. DEVICE_TITLE := YunCore A770
  596. DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca9887-ct
  597. IMAGE_SIZE := 16000k
  598. endef
  599. TARGET_DEVICES += yuncore_a770