generic.mk 11 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343
  1. include ./common-buffalo.mk
  2. include ./common-netgear.mk
  3. DEVICE_VARS += ADDPATTERN_ID ADDPATTERN_VERSION
  4. define Build/cybertan-trx
  5. @echo -n '' > [email protected]
  6. -$(STAGING_DIR_HOST)/bin/trx -o [email protected] \
  7. -f $(IMAGE_KERNEL) -F [email protected] \
  8. -x 32 -a 0x10000 -x -32 -f $@
  9. -mv "[email protected]" "$@"
  10. -rm [email protected]
  11. endef
  12. define Build/addpattern
  13. -$(STAGING_DIR_HOST)/bin/addpattern -B $(ADDPATTERN_ID) \
  14. -v v$(ADDPATTERN_VERSION) -i $@ -o [email protected]
  15. -mv "[email protected]" "$@"
  16. endef
  17. define Build/elecom-header
  18. $(eval fw_size=$(word 1,$(1)))
  19. $(eval edimax_model=$(word 2,$(1)))
  20. $(eval product=$(word 3,$(1)))
  21. $(eval factory_bin=$(word 4,$(1)))
  22. if [ -e $(KDIR)/tmp/$(KERNEL_INITRAMFS_IMAGE) -a "$$(stat -c%s $@)" -lt "$(fw_size)" ]; then \
  23. $(CP) $(KDIR)/tmp/$(KERNEL_INITRAMFS_IMAGE) $(factory_bin); \
  24. $(STAGING_DIR_HOST)/bin/mkedimaximg \
  25. -b -s CSYS -m $(edimax_model) \
  26. -f 0x70000 -S 0x01100000 \
  27. -i $(factory_bin) -o $(factory_bin).new; \
  28. mv $(factory_bin).new $(factory_bin); \
  29. ( \
  30. echo -n -e "ELECOM\x00\x00$(product)" | dd bs=40 count=1 conv=sync; \
  31. echo -n "0.00" | dd bs=16 count=1 conv=sync; \
  32. dd if=$(factory_bin); \
  33. ) > $(factory_bin).new; \
  34. mv $(factory_bin).new $(factory_bin); \
  35. $(CP) $(factory_bin) $(BIN_DIR)/; \
  36. else \
  37. echo "WARNING: initramfs kernel image too big, cannot generate factory image" >&2; \
  38. fi
  39. endef
  40. define Device/avm_fritz300e
  41. ATH_SOC := ar7242
  42. DEVICE_TITLE := AVM FRITZ!WLAN Repeater 300E
  43. KERNEL := kernel-bin | append-dtb | lzma | eva-image
  44. KERNEL_INITRAMFS := $$(KERNEL)
  45. IMAGE_SIZE := 15232k
  46. IMAGE/sysupgrade.bin := append-kernel | pad-to 64k | \
  47. append-squashfs-fakeroot-be | pad-to 256 | \
  48. append-rootfs | pad-rootfs | append-metadata | check-size $$$$(IMAGE_SIZE)
  49. DEVICE_PACKAGES := fritz-tffs rssileds -swconfig
  50. endef
  51. TARGET_DEVICES += avm_fritz300e
  52. define Device/avm_fritz4020
  53. ATH_SOC := qca9561
  54. DEVICE_TITLE := AVM FRITZ!Box 4020
  55. IMAGE_SIZE := 15232k
  56. KERNEL := kernel-bin | append-dtb | lzma | eva-image
  57. KERNEL_INITRAMFS := $$(KERNEL)
  58. IMAGE/sysupgrade.bin := append-kernel | pad-to 64k | \
  59. append-squashfs-fakeroot-be | pad-to 256 | \
  60. append-rootfs | pad-rootfs | append-metadata | check-size $$$$(IMAGE_SIZE)
  61. DEVICE_PACKAGES := fritz-tffs
  62. endef
  63. TARGET_DEVICES += avm_fritz4020
  64. define Device/buffalo_bhr-4grv
  65. ATH_SOC := ar7242
  66. DEVICE_TITLE := Buffalo BHR-4GRV
  67. DEVICE_PACKAGES := kmod-usb-core kmod-usb2 kmod-usb-ledtrig-usbport
  68. IMAGE_SIZE := 32256k
  69. IMAGES += factory.bin tftp.bin
  70. IMAGE/default := append-kernel | pad-to $$$$(BLOCKSIZE) | append-rootfs | pad-rootfs | check-size $$$$(IMAGE_SIZE)
  71. IMAGE/factory.bin := $$(IMAGE/default) | buffalo-enc BHR-4GRV 1.99 | buffalo-tag BHR-4GRV 3
  72. IMAGE/tftp.bin := $$(IMAGE/default) | buffalo-tftp-header
  73. SUPPORTED_DEVICES += wzr-hp-g450h
  74. endef
  75. TARGET_DEVICES += buffalo_bhr-4grv
  76. define Device/buffalo_wzr-hp-ag300h
  77. ATH_SOC := ar7161
  78. DEVICE_TITLE := Buffalo WZR-HP-AG300H
  79. IMAGE_SIZE := 32256k
  80. IMAGES += factory.bin tftp.bin
  81. IMAGE/default := append-kernel | pad-to $$$$(BLOCKSIZE) | append-rootfs | pad-rootfs | check-size $$$$(IMAGE_SIZE)
  82. IMAGE/factory.bin := $$(IMAGE/default) | buffalo-enc WZR-HP-AG300H 1.99 | buffalo-tag WZR-HP-AG300H 3
  83. IMAGE/tftp.bin := $$(IMAGE/default) | buffalo-tftp-header
  84. DEVICE_PACKAGES := kmod-usb-core kmod-usb-ohci kmod-usb2 kmod-usb-ledtrig-usbport kmod-leds-reset kmod-owl-loader
  85. SUPPORTED_DEVICES += wzr-hp-ag300h
  86. endef
  87. TARGET_DEVICES += buffalo_wzr-hp-ag300h
  88. define Device/buffalo_wzr-hp-g302h-a1a0
  89. ATH_SOC := ar7242
  90. DEVICE_TITLE := Buffalo WZR-HP-G302H A1A0
  91. DEVICE_PACKAGES := kmod-usb-core kmod-usb2 kmod-usb-ledtrig-usbport
  92. IMAGE_SIZE := 32128k
  93. IMAGES += factory.bin tftp.bin
  94. IMAGE/default := append-kernel | pad-to $$$$(BLOCKSIZE) | append-rootfs | pad-rootfs | check-size $$$$(IMAGE_SIZE)
  95. IMAGE/factory.bin := $$(IMAGE/default) | buffalo-enc WZR-HP-G302H 1.99 | buffalo-tag WZR-HP-G302H 4
  96. IMAGE/tftp.bin := $$(IMAGE/default) | buffalo-tftp-header
  97. SUPPORTED_DEVICES += wzr-hp-g300nh2
  98. endef
  99. TARGET_DEVICES += buffalo_wzr-hp-g302h-a1a0
  100. define Device/buffalo_wzr-hp-g450h
  101. ATH_SOC := ar7242
  102. DEVICE_TITLE := Buffalo WZR-HP-G450H/WZR-450HP
  103. DEVICE_PACKAGES := kmod-usb-core kmod-usb2 kmod-usb-ledtrig-usbport
  104. IMAGE_SIZE := 32256k
  105. IMAGES += factory.bin tftp.bin
  106. IMAGE/default := append-kernel | pad-to $$$$(BLOCKSIZE) | append-rootfs | pad-rootfs | check-size $$$$(IMAGE_SIZE)
  107. IMAGE/factory.bin := $$(IMAGE/default) | buffalo-enc WZR-HP-G450H 1.99 | buffalo-tag WZR-HP-G450H 3
  108. IMAGE/tftp.bin := $$(IMAGE/default) | buffalo-tftp-header
  109. SUPPORTED_DEVICES += wzr-hp-g450h
  110. endef
  111. TARGET_DEVICES += buffalo_wzr-hp-g450h
  112. define Device/dlink_dir-825-b1
  113. ATH_SOC := ar7161
  114. DEVICE_TITLE := D-LINK DIR-825 B1
  115. IMAGE_SIZE := 6208k
  116. IMAGE/sysupgrade.bin := append-kernel | append-rootfs | pad-rootfs | append-metadata | check-size $$$$(IMAGE_SIZE)
  117. DEVICE_PACKAGES := kmod-usb-core kmod-usb-ohci kmod-usb2 kmod-usb-ledtrig-usbport kmod-leds-reset kmod-owl-loader
  118. SUPPORTED_DEVICES += dir-825-b1
  119. endef
  120. TARGET_DEVICES += dlink_dir-825-b1
  121. define Device/elecom_wrc-300ghbk2-i
  122. ATH_SOC := qca9563
  123. DEVICE_TITLE := ELECOM WRC-300GHBK2-I
  124. IMAGE_SIZE := 7616k
  125. KERNEL_INITRAMFS := $$(KERNEL) | pad-to 2 | \
  126. elecom-header 7798706 RN51 WRC-300GHBK2-I \
  127. $(KDIR)/tmp/$$(KERNEL_INITRAMFS_PREFIX)-factory.bin
  128. endef
  129. TARGET_DEVICES += elecom_wrc-300ghbk2-i
  130. define Device/embeddedwireless_dorin
  131. ATH_SOC := ar9331
  132. DEVICE_TITLE := Embedded Wireless Dorin
  133. DEVICE_PACKAGES := kmod-usb-chipidea2
  134. IMAGE_SIZE := 16000k
  135. endef
  136. TARGET_DEVICES += embeddedwireless_dorin
  137. define Device/etactica_eg200
  138. ATH_SOC := ar9331
  139. DEVICE_TITLE := eTactica EG200
  140. DEVICE_PACKAGES := kmod-usb-chipidea2 kmod-ledtrig-oneshot \
  141. kmod-usb-serial kmod-usb-serial-ftdi kmod-usb-storage kmod-fs-ext4
  142. SUPPORTED_DEVICES += rme-eg200
  143. endef
  144. TARGET_DEVICES += etactica_eg200
  145. define Device/glinet_ar150
  146. ATH_SOC := ar9330
  147. DEVICE_TITLE := GL.iNet GL-AR150
  148. DEVICE_PACKAGES := kmod-usb-chipidea2
  149. IMAGE_SIZE := 16000k
  150. SUPPORTED_DEVICES += gl-ar150
  151. endef
  152. TARGET_DEVICES += glinet_ar150
  153. define Device/glinet_ar300m_nor
  154. ATH_SOC := qca9533
  155. DEVICE_TITLE := GL.iNet GL-AR300M
  156. DEVICE_PACKAGES := kmod-usb-core kmod-usb2
  157. IMAGE_SIZE := 16000k
  158. SUPPORTED_DEVICES += gl-ar300m
  159. endef
  160. TARGET_DEVICES += glinet_ar300m_nor
  161. define Device/iodata_etg3-r
  162. ATH_SOC := ar9342
  163. DEVICE_TITLE := I-O DATA ETG3-R
  164. IMAGE_SIZE := 7680k
  165. endef
  166. TARGET_DEVICES += iodata_etg3-r
  167. define Device/iodata_wn-ac1167dgr
  168. ATH_SOC := qca9557
  169. DEVICE_TITLE := I-O DATA WN-AC1167DGR
  170. IMAGE_SIZE := 14656k
  171. IMAGES += factory.bin
  172. IMAGE/factory.bin := append-kernel | pad-to $$$$(BLOCKSIZE) | \
  173. append-rootfs | pad-rootfs | check-size $$$$(IMAGE_SIZE) | \
  174. senao-header -r 0x30a -p 0x61 -t 2
  175. DEVICE_PACKAGES := kmod-usb-core kmod-usb2 kmod-ath10k-ct ath10k-firmware-qca988x-ct
  176. endef
  177. TARGET_DEVICES += iodata_wn-ac1167dgr
  178. define Device/iodata_wn-ac1600dgr2
  179. ATH_SOC := qca9557
  180. DEVICE_TITLE := I-O DATA WN-AC1600DGR2
  181. IMAGE_SIZE := 14656k
  182. IMAGES += factory.bin
  183. IMAGE/factory.bin := append-kernel | pad-to $$$$(BLOCKSIZE) | \
  184. append-rootfs | pad-rootfs | check-size $$$$(IMAGE_SIZE) | \
  185. senao-header -r 0x30a -p 0x60 -t 2 -v 200
  186. DEVICE_PACKAGES := kmod-usb-core kmod-usb2 kmod-ath10k-ct ath10k-firmware-qca988x-ct
  187. endef
  188. TARGET_DEVICES += iodata_wn-ac1600dgr2
  189. define Device/ocedo_koala
  190. ATH_SOC := qca9558
  191. DEVICE_TITLE := OCEDO Koala
  192. DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca988x-ct
  193. SUPPORTED_DEVICES += koala
  194. IMAGE_SIZE := 7424k
  195. IMAGE/sysupgrade.bin := append-kernel | append-rootfs | pad-rootfs | append-metadata | check-size $$$$(IMAGE_SIZE)
  196. endef
  197. TARGET_DEVICES += ocedo_koala
  198. define Device/ocedo_raccoon
  199. ATH_SOC := ar9344
  200. DEVICE_TITLE := OCEDO Raccoon
  201. IMAGE_SIZE := 7424k
  202. IMAGE/sysupgrade.bin := append-kernel | append-rootfs | pad-rootfs | append-metadata | check-size $$$$(IMAGE_SIZE)
  203. endef
  204. TARGET_DEVICES += ocedo_raccoon
  205. define Device/openmesh_om5p-ac-v2
  206. ATH_SOC := qca9558
  207. DEVICE_TITLE := OpenMesh OM5P-AC v2
  208. DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca988x-ct om-watchdog
  209. IMAGE_SIZE := 7808k
  210. SUPPORTED_DEVICES += om5p-acv2
  211. endef
  212. TARGET_DEVICES += openmesh_om5p-ac-v2
  213. define Device/pcs_cap324
  214. ATH_SOC := ar9344
  215. DEVICE_TITLE := PowerCloud Systems CAP324
  216. IMAGE_SIZE := 16000k
  217. IMAGES := sysupgrade.bin
  218. SUPPORTED_DEVICES += cap324
  219. endef
  220. TARGET_DEVICES += pcs_cap324
  221. define Device/pcs_cr3000
  222. ATH_SOC := ar9341
  223. DEVICE_TITLE := PowerCloud Systems CR3000
  224. IMAGE_SIZE := 7808k
  225. IMAGES := sysupgrade.bin
  226. SUPPORTED_DEVICES += cr3000
  227. endef
  228. TARGET_DEVICES += pcs_cr3000
  229. define Device/pcs_cr5000
  230. ATH_SOC := ar9344
  231. DEVICE_TITLE := PowerCloud Systems CR5000
  232. DEVICE_PACKAGES := kmod-usb2 kmod-usb-core
  233. IMAGE_SIZE := 7808k
  234. IMAGES := sysupgrade.bin
  235. SUPPORTED_DEVICES += cr5000
  236. endef
  237. TARGET_DEVICES += pcs_cr5000
  238. define Device/netgear_wndr3x00
  239. ATH_SOC := ar7161
  240. KERNEL := kernel-bin | append-dtb | lzma -d20 | netgear-uImage lzma
  241. IMAGES := sysupgrade.bin factory.img
  242. IMAGE/default := append-kernel | pad-to $$$$(BLOCKSIZE) | netgear-squashfs | append-rootfs | pad-rootfs
  243. IMAGE/sysupgrade.bin := $$(IMAGE/default) | append-metadata | check-size $$$$(IMAGE_SIZE)
  244. IMAGE/factory.img := $$(IMAGE/default) | netgear-dni | check-size $$$$(IMAGE_SIZE)
  245. DEVICE_PACKAGES := kmod-usb-core kmod-usb-ohci kmod-usb2 kmod-usb-ledtrig-usbport kmod-leds-reset kmod-owl-loader
  246. endef
  247. define Device/netgear_wndr3700
  248. $(Device/netgear_wndr3x00)
  249. DEVICE_TITLE := NETGEAR WNDR3700
  250. NETGEAR_KERNEL_MAGIC := 0x33373030
  251. NETGEAR_BOARD_ID := WNDR3700
  252. IMAGE_SIZE := 7680k
  253. IMAGES += factory-NA.img
  254. IMAGE/factory-NA.img := $$(IMAGE/default) | netgear-dni NA | check-size $$$$(IMAGE_SIZE)
  255. SUPPORTED_DEVICES += wndr3700
  256. endef
  257. TARGET_DEVICES += netgear_wndr3700
  258. define Device/netgear_wndr3700v2
  259. $(Device/netgear_wndr3x00)
  260. DEVICE_TITLE := NETGEAR WNDR3700v2
  261. NETGEAR_KERNEL_MAGIC := 0x33373031
  262. NETGEAR_BOARD_ID := WNDR3700v2
  263. NETGEAR_HW_ID := 29763654+16+64
  264. IMAGE_SIZE := 15872k
  265. SUPPORTED_DEVICES += wndr3700v2
  266. endef
  267. TARGET_DEVICES += netgear_wndr3700v2
  268. define Device/pisen_wmm003n
  269. $(Device/tplink-8mlzma)
  270. ATH_SOC := ar9331
  271. DEVICE_TITLE := Pisen WMM003N (Cloud Easy Power)
  272. DEVICE_PACKAGES := kmod-usb-core kmod-usb2 kmod-usb-chipidea2
  273. TPLINK_HWID := 0x07030101
  274. IMAGES := sysupgrade.bin
  275. endef
  276. TARGET_DEVICES += pisen_wmm003n
  277. define Device/netgear_wndr3800
  278. $(Device/netgear_wndr3x00)
  279. DEVICE_TITLE := NETGEAR WNDR3800
  280. NETGEAR_KERNEL_MAGIC := 0x33373031
  281. NETGEAR_BOARD_ID := WNDR3800
  282. NETGEAR_HW_ID := 29763654+16+128
  283. IMAGE_SIZE := 15872k
  284. SUPPORTED_DEVICES += wndr3800
  285. endef
  286. TARGET_DEVICES += netgear_wndr3800
  287. define Device/phicomm_k2t
  288. ATH_SOC := qca9563
  289. DEVICE_TITLE := Phicomm K2T
  290. KERNEL := kernel-bin | append-dtb | lzma | uImage lzma
  291. KERNEL_INITRAMFS := kernel-bin | append-dtb | lzma | uImage lzma
  292. IMAGE_SIZE := 15744k
  293. IMAGES := sysupgrade.bin
  294. IMAGE/default := append-kernel | append-rootfs | pad-rootfs
  295. IMAGE/sysupgrade.bin := $$(IMAGE/default) | append-metadata | check-size $$$$(IMAGE_SIZE)
  296. DEVICE_PACKAGES := kmod-leds-reset kmod-ath10k-ct ath10k-firmware-qca9888-ct
  297. endef
  298. TARGET_DEVICES += phicomm_k2t
  299. define Device/wd_mynet-wifi-rangeextender
  300. ATH_SOC := ar9344
  301. DEVICE_TITLE := Western Digital My Net Wi-Fi Range Extender
  302. DEVICE_PACKAGES := rssileds nvram -swconfig
  303. IMAGE_SIZE := 7808k
  304. ADDPATTERN_ID := mynet-rext
  305. ADDPATTERN_VERSION := 1.00.01
  306. IMAGE/sysupgrade.bin := append-rootfs | pad-rootfs | cybertan-trx | \
  307. addpattern | append-metadata
  308. SUPPORTED_DEVICES += mynet-rext
  309. endef
  310. TARGET_DEVICES += wd_mynet-wifi-rangeextender