generic.mk 33 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150
  1. DEVICE_VARS += NETGEAR_BOARD_ID NETGEAR_HW_ID
  2. DEVICE_VARS += RAS_BOARD RAS_ROOTFS_SIZE RAS_VERSION
  3. DEVICE_VARS += WRGG_DEVNAME WRGG_SIGNATURE
  4. define Device/FitImage
  5. KERNEL_SUFFIX := -fit-uImage.itb
  6. KERNEL = kernel-bin | gzip | fit gzip $$(KDIR)/image-$$(DEVICE_DTS).dtb
  7. KERNEL_NAME := Image
  8. endef
  9. define Device/FitImageLzma
  10. KERNEL_SUFFIX := -fit-uImage.itb
  11. KERNEL = kernel-bin | lzma | fit lzma $$(KDIR)/image-$$(DEVICE_DTS).dtb
  12. KERNEL_NAME := Image
  13. endef
  14. define Device/FitzImage
  15. KERNEL_SUFFIX := -fit-zImage.itb
  16. KERNEL = kernel-bin | fit none $$(KDIR)/image-$$(DEVICE_DTS).dtb
  17. KERNEL_NAME := zImage
  18. endef
  19. define Device/UbiFit
  20. KERNEL_IN_UBI := 1
  21. IMAGES := nand-factory.ubi nand-sysupgrade.bin
  22. IMAGE/nand-factory.ubi := append-ubi
  23. IMAGE/nand-sysupgrade.bin := sysupgrade-tar | append-metadata
  24. endef
  25. define Device/DniImage
  26. $(call Device/FitzImage)
  27. NETGEAR_BOARD_ID :=
  28. NETGEAR_HW_ID :=
  29. IMAGES += factory.img
  30. IMAGE/factory.img := append-kernel | pad-offset 64k 64 | append-uImage-fakehdr filesystem | append-rootfs | pad-rootfs | netgear-dni
  31. IMAGE/sysupgrade.bin := append-kernel | pad-offset 64k 64 | append-uImage-fakehdr filesystem | \
  32. append-rootfs | pad-rootfs | check-size | append-metadata
  33. endef
  34. define Build/append-rootfshdr
  35. mkimage -A $(LINUX_KARCH) \
  36. -O linux -T filesystem \
  37. -C lzma -a $(KERNEL_LOADADDR) -e $(if $(KERNEL_ENTRY),$(KERNEL_ENTRY),$(KERNEL_LOADADDR)) \
  38. -n root.squashfs -d $(IMAGE_ROOTFS) [email protected]
  39. cat $(IMAGE_KERNEL) > $@.$1
  40. dd [email protected] bs=64 count=1 >> $@.$1
  41. endef
  42. define Build/append-rutx-metadata
  43. echo \
  44. '{ \
  45. "device_code": [".*"], \
  46. "hwver": [".*"], \
  47. "batch": [".*"], \
  48. "serial": [".*"], \
  49. "supported_devices":["teltonika,rutx"] \
  50. }' | fwtool -I - $@
  51. endef
  52. define Build/copy-file
  53. cat "$(1)" > "$@"
  54. endef
  55. define Build/mkmylofw_32m
  56. $(eval device_id=$(word 1,$(1)))
  57. $(eval revision=$(word 2,$(1)))
  58. let \
  59. size="$$(stat -c%s $@)" \
  60. pad="$(subst k,* 1024,$(BLOCKSIZE))" \
  61. pad="(pad - (size % pad)) % pad" \
  62. newsize='size + pad'; \
  63. $(STAGING_DIR_HOST)/bin/mkmylofw \
  64. -B WPE72 -i 0x11f6:$(device_id):0x11f6:$(device_id) -r $(revision) \
  65. -s 0x2000000 -p0x180000:$$newsize:al:0x80208000:"OpenWrt":$@ \
  66. [email protected]
  67. @mv [email protected] $@
  68. endef
  69. define Build/wac5xx-netgear-tar
  70. mkdir [email protected]
  71. mv $@ [email protected]/wac5xx-ubifs-root.img
  72. md5sum [email protected]/wac5xx-ubifs-root.img > [email protected]/wac5xx-ubifs-root.md5sum
  73. echo "WAC505 WAC510" > [email protected]/metadata.txt
  74. echo "WAC505_V9.9.9.9" > [email protected]/version
  75. tar -C [email protected]/ -cf $@ .
  76. rm -rf [email protected]
  77. endef
  78. define Build/qsdk-ipq-factory-nand-askey
  79. $(TOPDIR)/scripts/mkits-qsdk-ipq-image.sh [email protected]\
  80. askey_kernel $@.$1 \
  81. askey_fs $(IMAGE_ROOTFS) \
  82. ubifs $@
  83. PATH=$(LINUX_DIR)/scripts/dtc:$(PATH) mkimage -f [email protected] [email protected]
  84. @mv [email protected] $@
  85. endef
  86. define Build/qsdk-ipq-app-gpt
  87. cp $@ [email protected] 2>/dev/null || true
  88. ptgen -g -o [email protected] -a 1 -l 1024 \
  89. -t 0x2e -N 0:HLOS -r -p 32M \
  90. -t 0x83 -N rootfs -r -p 128M \
  91. -N rootfs_data -p 512M
  92. cat [email protected] >> $@
  93. rm [email protected]
  94. endef
  95. define Build/SenaoFW
  96. -$(STAGING_DIR_HOST)/bin/mksenaofw \
  97. -n $(BOARD_NAME) -r $(VENDOR_ID) -p $(1) \
  98. -c $(DATECODE) -w $(2) -x $(CW_VER) -t 0 \
  99. -e $@ \
  100. -o [email protected]
  101. @cp [email protected] $@
  102. endef
  103. define Build/wrgg-image
  104. mkwrggimg -i $@ \
  105. -o [email protected] \
  106. -d "$(WRGG_DEVNAME)" \
  107. -s "$(WRGG_SIGNATURE)" \
  108. -v "" -m "" -B ""
  109. mv [email protected] $@
  110. endef
  111. define Device/8dev_habanero-dvk
  112. $(call Device/FitImageLzma)
  113. DEVICE_VENDOR := 8devices
  114. DEVICE_MODEL := Habanero DVK
  115. IMAGE_SIZE := 30976k
  116. SOC := qcom-ipq4019
  117. IMAGE/sysupgrade.bin := append-kernel | pad-to 64k | append-rootfs | pad-rootfs | check-size | append-metadata
  118. endef
  119. TARGET_DEVICES += 8dev_habanero-dvk
  120. define Device/8dev_jalapeno-common
  121. $(call Device/FitImage)
  122. $(call Device/UbiFit)
  123. BLOCKSIZE := 128k
  124. PAGESIZE := 2048
  125. SOC := qcom-ipq4018
  126. endef
  127. define Device/8dev_jalapeno
  128. $(call Device/8dev_jalapeno-common)
  129. DEVICE_VENDOR := 8devices
  130. DEVICE_MODEL := Jalapeno
  131. endef
  132. TARGET_DEVICES += 8dev_jalapeno
  133. define Device/alfa-network_ap120c-ac
  134. $(call Device/FitImage)
  135. $(call Device/UbiFit)
  136. DEVICE_VENDOR := ALFA Network
  137. DEVICE_MODEL := AP120C-AC
  138. SOC := qcom-ipq4018
  139. DEVICE_PACKAGES := kmod-usb-acm kmod-tpm-i2c-atmel
  140. BLOCKSIZE := 128k
  141. PAGESIZE := 2048
  142. IMAGE_SIZE := 65536k
  143. IMAGES := nand-factory.bin nand-sysupgrade.bin
  144. IMAGE/nand-factory.bin := append-ubi | qsdk-ipq-factory-nand
  145. endef
  146. TARGET_DEVICES += alfa-network_ap120c-ac
  147. define Device/aruba_glenmorangie
  148. $(call Device/FitImageLzma)
  149. DEVICE_VENDOR := Aruba
  150. SOC := qcom-ipq4029
  151. endef
  152. define Device/aruba_ap-303
  153. $(call Device/aruba_glenmorangie)
  154. DEVICE_MODEL := AP-303
  155. endef
  156. TARGET_DEVICES += aruba_ap-303
  157. define Device/aruba_ap-303h
  158. $(call Device/aruba_glenmorangie)
  159. DEVICE_MODEL := AP-303H
  160. endef
  161. # Missing DSA Setup
  162. #TARGET_DEVICES += aruba_ap-303h
  163. define Device/aruba_ap-365
  164. $(call Device/aruba_glenmorangie)
  165. DEVICE_MODEL := AP-365
  166. DEVICE_PACKAGES := kmod-hwmon-ad7418 ipq-wifi-aruba_ap-365
  167. endef
  168. # Missing DSA Setup
  169. #TARGET_DEVICES += aruba_ap-365
  170. define Device/asus_map-ac2200
  171. $(call Device/FitImageLzma)
  172. DEVICE_VENDOR := ASUS
  173. DEVICE_MODEL := Lyra (MAP-AC2200)
  174. SOC := qcom-ipq4019
  175. DEVICE_PACKAGES := ath10k-firmware-qca9888-ct kmod-ath3k
  176. endef
  177. TARGET_DEVICES += asus_map-ac2200
  178. # WARNING: this is an initramfs image that gets you half of the way there
  179. # you need to delete the jffs2 ubi volume and sysupgrade to the final image
  180. # to get a "trx" you can flash via web UI for ac42u/ac58u:
  181. # - change call Device/FitImageLzma to Device/FitImage
  182. # - add the following below UIMAGE_NAME
  183. # UIMAGE_MAGIC := 0x27051956
  184. # IMAGES += factory.trx
  185. # IMAGE/factory.trx := copy-file $(KDIR)/tmp/$$(KERNEL_INITRAMFS_IMAGE) | uImage none
  186. define Device/asus_rt-ac42u
  187. $(call Device/FitImageLzma)
  188. DEVICE_VENDOR := ASUS
  189. DEVICE_MODEL := RT-AC42U
  190. DEVICE_ALT0_VENDOR := ASUS
  191. DEVICE_ALT0_MODEL := RT-ACRH17
  192. DEVICE_ALT1_VENDOR := ASUS
  193. DEVICE_ALT1_MODEL := RT-AC2200
  194. SOC := qcom-ipq4019
  195. BLOCKSIZE := 128k
  196. PAGESIZE := 2048
  197. IMAGE_SIZE := 20439364
  198. FILESYSTEMS := squashfs
  199. # RT-AC82U is nowhere to be found online
  200. # Rather, this device is a/k/a RT-AC42U
  201. # But we'll go with what the vendor firmware has...
  202. UIMAGE_NAME:=$(shell echo -e '\03\01\01\01RT-AC82U')
  203. DEVICE_PACKAGES := ath10k-firmware-qca9984-ct kmod-usb-ledtrig-usbport
  204. endef
  205. TARGET_DEVICES += asus_rt-ac42u
  206. define Device/asus_rt-ac58u
  207. $(call Device/FitImageLzma)
  208. DEVICE_VENDOR := ASUS
  209. DEVICE_MODEL := RT-AC58U
  210. DEVICE_ALT0_VENDOR := ASUS
  211. DEVICE_ALT0_MODEL := RT-ACRH13
  212. SOC := qcom-ipq4018
  213. BLOCKSIZE := 128k
  214. PAGESIZE := 2048
  215. IMAGE_SIZE := 20439364
  216. FILESYSTEMS := squashfs
  217. # Someone - in their infinite wisdom - decided to put the firmware
  218. # version in front of the image name \03\00\00\04 => Version 3.0.0.4
  219. # Since u-boot works with strings we either need another fixup step
  220. # to add a version... or we are very careful not to add '\0' into that
  221. # string and call it a day.... Yeah, we do the latter!
  222. UIMAGE_NAME:=$(shell echo -e '\03\01\01\01RT-AC58U')
  223. DEVICE_PACKAGES := -kmod-ath10k-ct kmod-ath10k-ct-smallbuffers \
  224. kmod-usb-ledtrig-usbport
  225. endef
  226. TARGET_DEVICES += asus_rt-ac58u
  227. define Device/avm_fritzbox-4040
  228. $(call Device/FitImageLzma)
  229. DEVICE_VENDOR := AVM
  230. DEVICE_MODEL := FRITZ!Box 4040
  231. SOC := qcom-ipq4018
  232. BOARD_NAME := fritz4040
  233. IMAGE_SIZE := 29056k
  234. UBOOT_PATH := $(STAGING_DIR_IMAGE)/uboot-fritz4040.bin
  235. UBOOT_PARTITION_SIZE := 524288
  236. IMAGES += eva.bin
  237. IMAGE/eva.bin := append-uboot | pad-to $$$$(UBOOT_PARTITION_SIZE) | append-kernel | append-rootfs | pad-rootfs
  238. IMAGE/sysupgrade.bin := append-kernel | append-rootfs | pad-rootfs | check-size | append-metadata
  239. DEVICE_PACKAGES := fritz-tffs fritz-caldata
  240. endef
  241. TARGET_DEVICES += avm_fritzbox-4040
  242. define Device/avm_fritzbox-7530
  243. $(call Device/FitImageLzma)
  244. DEVICE_VENDOR := AVM
  245. DEVICE_MODEL := FRITZ!Box 7530
  246. DEVICE_ALT0_VENDOR := AVM
  247. DEVICE_ALT0_MODEL := FRITZ!Box 7520
  248. SOC := qcom-ipq4019
  249. DEVICE_PACKAGES := fritz-caldata fritz-tffs-nand
  250. endef
  251. TARGET_DEVICES += avm_fritzbox-7530
  252. define Device/avm_fritzrepeater-1200
  253. $(call Device/FitImageLzma)
  254. DEVICE_VENDOR := AVM
  255. DEVICE_MODEL := FRITZ!Repeater 1200
  256. SOC := qcom-ipq4019
  257. DEVICE_PACKAGES := fritz-caldata fritz-tffs-nand
  258. endef
  259. TARGET_DEVICES += avm_fritzrepeater-1200
  260. define Device/avm_fritzrepeater-3000
  261. $(call Device/FitImageLzma)
  262. DEVICE_VENDOR := AVM
  263. DEVICE_MODEL := FRITZ!Repeater 3000
  264. SOC := qcom-ipq4019
  265. DEVICE_PACKAGES := ath10k-firmware-qca9984-ct fritz-caldata fritz-tffs-nand
  266. endef
  267. # Missing DSA Setup
  268. #TARGET_DEVICES += avm_fritzrepeater-3000
  269. define Device/buffalo_wtr-m2133hp
  270. $(call Device/FitImage)
  271. $(call Device/UbiFit)
  272. DEVICE_VENDOR := Buffalo
  273. DEVICE_MODEL := WTR-M2133HP
  274. SOC := qcom-ipq4019
  275. DEVICE_PACKAGES := ath10k-firmware-qca9984-ct
  276. BLOCKSIZE := 128k
  277. PAGESIZE := 2048
  278. endef
  279. # Missing DSA Setup
  280. #TARGET_DEVICES += buffalo_wtr-m2133hp
  281. define Device/cellc_rtl30vw
  282. KERNEL_SUFFIX := -fit-zImage.itb
  283. KERNEL_INITRAMFS = kernel-bin | gzip | fit gzip $$(KDIR)/image-$$(DEVICE_DTS).dtb
  284. KERNEL = kernel-bin | fit none $$(KDIR)/image-$$(DEVICE_DTS).dtb | uImage lzma | pad-to 2048
  285. KERNEL_NAME := zImage
  286. KERNEL_IN_UBI :=
  287. IMAGES := nand-factory.bin nand-sysupgrade.bin
  288. IMAGE/nand-factory.bin := append-rootfshdr kernel | append-ubi | qsdk-ipq-factory-nand-askey kernel
  289. IMAGE/nand-sysupgrade.bin := append-rootfshdr kernel | sysupgrade-tar [email protected] | append-metadata
  290. DEVICE_VENDOR := Cell C
  291. DEVICE_MODEL := RTL30VW
  292. SOC := qcom-ipq4019
  293. DEVICE_DTS_CONFIG := config@5
  294. KERNEL_INSTALL := 1
  295. KERNEL_SIZE := 4096k
  296. IMAGE_SIZE := 57344k
  297. BLOCKSIZE := 128k
  298. PAGESIZE := 2048
  299. DEVICE_PACKAGES := kmod-usb-net-qmi-wwan kmod-usb-serial-option uqmi
  300. endef
  301. TARGET_DEVICES += cellc_rtl30vw
  302. define Device/cilab_meshpoint-one
  303. $(call Device/8dev_jalapeno-common)
  304. DEVICE_VENDOR := Crisis Innovation Lab
  305. DEVICE_MODEL := MeshPoint.One
  306. DEVICE_PACKAGES := kmod-i2c-gpio kmod-iio-bmp280-i2c kmod-hwmon-ina2xx kmod-rtc-pcf2127
  307. endef
  308. # Missing DSA Setup
  309. #TARGET_DEVICES += cilab_meshpoint-one
  310. define Device/compex_wpj419
  311. $(call Device/FitImage)
  312. $(call Device/UbiFit)
  313. DEVICE_VENDOR := Compex
  314. DEVICE_MODEL := WPJ419
  315. SOC := qcom-ipq4019
  316. DEVICE_DTS_CONFIG := config@12
  317. KERNEL_INSTALL := 1
  318. BLOCKSIZE := 128k
  319. PAGESIZE := 2048
  320. FILESYSTEMS := squashfs
  321. endef
  322. # Missing DSA Setup
  323. #TARGET_DEVICES += compex_wpj419
  324. define Device/compex_wpj428
  325. $(call Device/FitImage)
  326. DEVICE_VENDOR := Compex
  327. DEVICE_MODEL := WPJ428
  328. SOC := qcom-ipq4028
  329. DEVICE_DTS_CONFIG := config@4
  330. BLOCKSIZE := 64k
  331. IMAGE_SIZE := 31232k
  332. KERNEL_SIZE := 4096k
  333. IMAGES += cpximg-6a04.bin
  334. IMAGE/sysupgrade.bin := append-kernel | append-rootfs | pad-rootfs | append-metadata
  335. IMAGE/cpximg-6a04.bin := append-kernel | append-rootfs | pad-rootfs | mkmylofw_32m 0x8A2 3
  336. DEVICE_PACKAGES := kmod-gpio-beeper
  337. DEFAULT := n
  338. endef
  339. TARGET_DEVICES += compex_wpj428
  340. define Device/devolo_magic-2-wifi-next
  341. $(call Device/FitImage)
  342. DEVICE_VENDOR := devolo
  343. DEVICE_MODEL := Magic 2 WiFi next
  344. SOC := qcom-ipq4018
  345. KERNEL_SIZE := 4096k
  346. # If the bootloader sees 0xDEADC0DE and this trailer at the 64k boundary of a TFTP image
  347. # it will bootm it, just like we want for the initramfs.
  348. KERNEL_INITRAMFS := kernel-bin | gzip | fit gzip $$(KDIR)/image-$$(DEVICE_DTS).dtb | pad-to 64k |\
  349. append-string -e '\xDE\xAD\xC0\xDE{"fl_initramfs":""}\x00'
  350. IMAGE_SIZE := 26624k
  351. IMAGES := sysupgrade.bin
  352. IMAGE/sysupgrade.bin := append-kernel | append-rootfs | pad-rootfs | append-metadata
  353. DEVICE_PACKAGES := ipq-wifi-devolo_magic-2-wifi-next
  354. DEFAULT := n
  355. endef
  356. # Missing DSA Setup
  357. #TARGET_DEVICES += devolo_magic-2-wifi-next
  358. define Device/dlink_dap-2610
  359. $(call Device/FitImageLzma)
  360. DEVICE_VENDOR := D-Link
  361. DEVICE_MODEL := DAP-2610
  362. SOC := qcom-ipq4018
  363. DEVICE_DTS_CONFIG := [email protected]
  364. BLOCKSIZE := 64k
  365. WRGG_DEVNAME := /dev/mtdblock/8
  366. WRGG_SIGNATURE := wapac30_dkbs_dap2610
  367. IMAGE_SIZE := 14080k
  368. IMAGES += factory.bin
  369. # Bootloader expects a special 160 byte header which is added by
  370. # wrgg-image.
  371. # Factory image size must be larger than 6MB, and size in wrgg header must
  372. # match actual factory image size to be flashable from D-Link http server.
  373. # Bootloader verifies checksum of wrgg image before booting, thus jffs2
  374. # cannot be part of the wrgg image. This is solved in the factory image by
  375. # having the rootfs at the end of the image (without pad-rootfs). And in
  376. # the sysupgrade image only the kernel is included in the wrgg checksum,
  377. # but this is not flashable from the D-link http server.
  378. # append-rootfs must start on an erase block boundary.
  379. IMAGE/factory.bin := append-kernel | pad-offset 6144k 160 | append-rootfs | wrgg-image | check-size
  380. IMAGE/sysupgrade.bin := append-kernel | wrgg-image | pad-to $$$$(BLOCKSIZE) | append-rootfs | pad-rootfs | check-size | append-metadata
  381. endef
  382. # Missing DSA Setup
  383. #TARGET_DEVICES += dlink_dap-2610
  384. define Device/edgecore_ecw5211
  385. $(call Device/FitImage)
  386. $(call Device/UbiFit)
  387. DEVICE_VENDOR := Edgecore
  388. DEVICE_MODEL := ECW5211
  389. SOC := qcom-ipq4018
  390. BLOCKSIZE := 128k
  391. PAGESIZE := 2048
  392. DEVICE_DTS_CONFIG := [email protected]
  393. DEVICE_PACKAGES := kmod-tpm-i2c-atmel kmod-usb-acm
  394. endef
  395. TARGET_DEVICES += edgecore_ecw5211
  396. define Device/edgecore_oap100
  397. $(call Device/FitImage)
  398. $(call Device/UbiFit)
  399. DEVICE_VENDOR := Edgecore
  400. DEVICE_MODEL := OAP100
  401. SOC := qcom-ipq4019
  402. BLOCKSIZE := 128k
  403. PAGESIZE := 2048
  404. IMAGES := nand-sysupgrade.bin
  405. DEVICE_DTS_CONFIG := [email protected]
  406. DEVICE_PACKAGES := ipq-wifi-edgecore_oap100 kmod-usb-acm kmod-usb-net kmod-usb-net-cdc-qmi uqmi
  407. endef
  408. # Missing DSA Setup
  409. #TARGET_DEVICES += edgecore_oap100
  410. define Device/engenius_eap1300
  411. $(call Device/FitImage)
  412. DEVICE_VENDOR := EnGenius
  413. DEVICE_MODEL := EAP1300
  414. DEVICE_DTS_CONFIG := config@4
  415. BOARD_NAME := eap1300
  416. SOC := qcom-ipq4018
  417. KERNEL_SIZE := 5120k
  418. IMAGE_SIZE := 25344k
  419. IMAGE/sysupgrade.bin := append-kernel | append-rootfs | pad-rootfs | append-metadata
  420. endef
  421. # Missing DSA Setup
  422. #TARGET_DEVICES += engenius_eap1300
  423. define Device/engenius_eap2200
  424. $(call Device/FitImage)
  425. $(call Device/UbiFit)
  426. DEVICE_VENDOR := EnGenius
  427. DEVICE_MODEL := EAP2200
  428. SOC := qcom-ipq4019
  429. BLOCKSIZE := 128k
  430. PAGESIZE := 2048
  431. DEVICE_PACKAGES := ath10k-firmware-qca9888-ct -kmod-ath10k-ct kmod-ath10k-ct-smallbuffers
  432. endef
  433. # Missing DSA Setup
  434. #TARGET_DEVICES += engenius_eap2200
  435. define Device/engenius_emd1
  436. $(call Device/FitImage)
  437. DEVICE_VENDOR := EnGenius
  438. DEVICE_MODEL := EMD1
  439. DEVICE_DTS_CONFIG := config@4
  440. SOC := qcom-ipq4018
  441. IMAGE_SIZE := 30720k
  442. IMAGES += factory.bin
  443. IMAGE/sysupgrade.bin := append-kernel | append-rootfs | pad-rootfs | append-metadata
  444. IMAGE/factory.bin := qsdk-ipq-factory-nor | check-size
  445. endef
  446. # Missing DSA Setup
  447. #TARGET_DEVICES += engenius_emd1
  448. define Device/engenius_emr3500
  449. $(call Device/FitImage)
  450. DEVICE_VENDOR := EnGenius
  451. DEVICE_MODEL := EMR3500
  452. DEVICE_DTS_CONFIG := config@4
  453. SOC := qcom-ipq4018
  454. KERNEL_SIZE := 4096k
  455. IMAGE_SIZE := 30720k
  456. IMAGES += factory.bin
  457. IMAGE/sysupgrade.bin := append-kernel | append-rootfs | pad-rootfs | append-metadata
  458. IMAGE/factory.bin := qsdk-ipq-factory-nor | check-size
  459. DEFAULT := n
  460. endef
  461. # Missing DSA Setup
  462. #TARGET_DEVICES += engenius_emr3500
  463. define Device/engenius_ens620ext
  464. $(call Device/FitImage)
  465. DEVICE_VENDOR := EnGenius
  466. DEVICE_MODEL := ENS620EXT
  467. SOC := qcom-ipq4018
  468. DEVICE_DTS_CONFIG := config@4
  469. BLOCKSIZE := 64k
  470. PAGESIZE := 256
  471. BOARD_NAME := ENS620EXT
  472. VENDOR_ID := 0x0101
  473. PRODUCT_ID := 0x79
  474. PRODUCT_ID_NEW := 0xA4
  475. DATECODE := 190507
  476. FW_VER := 3.1.2
  477. FW_VER_NEW := 3.5.6
  478. CW_VER := 1.8.99
  479. IMAGE_SIZE := 21312k
  480. KERNEL_SIZE := 5120k
  481. FILESYSTEMS := squashfs
  482. IMAGES += factory_30.bin factory_35.bin
  483. IMAGE/sysupgrade.bin := append-kernel | append-rootfs | pad-rootfs | check-size | append-metadata
  484. IMAGE/factory_30.bin := append-kernel | pad-to $$$$(KERNEL_SIZE) | append-rootfs | pad-rootfs | check-size | SenaoFW $$$$(PRODUCT_ID) $$$$(FW_VER)
  485. IMAGE/factory_35.bin := qsdk-ipq-factory-nor | check-size | SenaoFW $$$$(PRODUCT_ID_NEW) $$$$(FW_VER_NEW)
  486. endef
  487. # Missing DSA Setup
  488. #TARGET_DEVICES += engenius_ens620ext
  489. define Device/extreme-networks_ws-ap3915i
  490. $(call Device/FitImage)
  491. DEVICE_VENDOR := Extreme Networks
  492. DEVICE_MODEL := WS-AP3915i
  493. IMAGE_SIZE := 30080k
  494. SOC := qcom-ipq4029
  495. BLOCKSIZE := 128k
  496. IMAGE/sysupgrade.bin := append-kernel | append-rootfs | pad-rootfs | check-size | append-metadata
  497. DEVICE_PACKAGES := ipq-wifi-extreme-networks_ws-ap3915i
  498. endef
  499. # Missing DSA Setup
  500. #TARGET_DEVICES += extreme-networks_ws-ap3915i
  501. define Device/ezviz_cs-w3-wd1200g-eup
  502. $(call Device/FitImage)
  503. DEVICE_VENDOR := EZVIZ
  504. DEVICE_MODEL := CS-W3-WD1200G
  505. DEVICE_VARIANT := EUP
  506. IMAGE_SIZE := 14848k
  507. KERNEL_SIZE = 6m
  508. SOC := qcom-ipq4018
  509. IMAGE/sysupgrade.bin := append-kernel | append-rootfs | pad-rootfs | \
  510. append-metadata
  511. DEVICE_PACKAGES := -kmod-ath10k-ct kmod-ath10k-ct-smallbuffers
  512. DEVICE_COMPAT_VERSION := 2.0
  513. DEVICE_COMPAT_MESSAGE := uboot's bootcmd has to be updated (see wiki). \
  514. Upgrade via sysupgrade mechanism is not possible.
  515. endef
  516. # Missing DSA Setup
  517. #TARGET_DEVICES += ezviz_cs-w3-wd1200g-eup
  518. define Device/glinet_gl-ap1300
  519. $(call Device/FitImage)
  520. $(call Device/UbiFit)
  521. DEVICE_VENDOR := GL.iNet
  522. DEVICE_MODEL := GL-AP1300
  523. SOC := qcom-ipq4018
  524. DEVICE_DTS_CONFIG := [email protected]
  525. BLOCKSIZE := 128k
  526. PAGESIZE := 2048
  527. IMAGE_SIZE := 131072k
  528. KERNEL_INSTALL := 1
  529. DEVICE_PACKAGES := ipq-wifi-glinet_gl-ap1300 kmod-usb-net-qmi-wwan kmod-usb-serial-option uqmi
  530. endef
  531. # Missing DSA Setup
  532. #TARGET_DEVICES += glinet_gl-ap1300
  533. define Device/glinet_gl-b1300
  534. $(call Device/FitzImage)
  535. DEVICE_VENDOR := GL.iNet
  536. DEVICE_MODEL := GL-B1300
  537. BOARD_NAME := gl-b1300
  538. SOC := qcom-ipq4029
  539. KERNEL_SIZE := 4096k
  540. IMAGE_SIZE := 26624k
  541. IMAGE/sysupgrade.bin := append-kernel |append-rootfs | pad-rootfs | append-metadata
  542. endef
  543. TARGET_DEVICES += glinet_gl-b1300
  544. define Device/glinet_gl-b2200
  545. $(call Device/FitzImage)
  546. DEVICE_VENDOR := GL.iNet
  547. DEVICE_MODEL := GL-B2200
  548. SOC := qcom-ipq4019
  549. DEVICE_DTS_CONFIG := [email protected]
  550. KERNEL_INITRAMFS_SUFFIX := -recovery.itb
  551. IMAGES := emmc.img.gz sysupgrade.bin
  552. IMAGE/emmc.img.gz := qsdk-ipq-app-gpt |\
  553. pad-to 1024k | append-kernel |\
  554. pad-to 33792k | append-rootfs |\
  555. append-metadata | gzip
  556. IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata
  557. DEVICE_PACKAGES := ath10k-firmware-qca9888-ct \
  558. kmod-fs-ext4 kmod-mmc kmod-spi-dev mkf2fs e2fsprogs kmod-fs-f2fs
  559. endef
  560. TARGET_DEVICES += glinet_gl-b2200
  561. define Device/glinet_gl-s1300
  562. $(call Device/FitzImage)
  563. DEVICE_VENDOR := GL.iNet
  564. DEVICE_MODEL := GL-S1300
  565. SOC := qcom-ipq4029
  566. KERNEL_SIZE := 4096k
  567. IMAGE_SIZE := 26624k
  568. IMAGES := sysupgrade.bin
  569. IMAGE/sysupgrade.bin := append-kernel | append-rootfs | pad-rootfs | append-metadata
  570. DEVICE_PACKAGES := ipq-wifi-glinet_gl-s1300 kmod-fs-ext4 kmod-mmc kmod-spi-dev
  571. endef
  572. # Missing DSA Setup
  573. #TARGET_DEVICES += glinet_gl-s1300
  574. define Device/linksys_ea6350v3
  575. # The Linksys EA6350v3 has a uboot bootloader that does not
  576. # support either booting lzma kernel images nor booting UBI
  577. # partitions. This uboot, however, supports raw kernel images and
  578. # gzipped images.
  579. #
  580. # As for the time of writing this, the device will boot the kernel
  581. # from a fixed address with a fixed length of 3MiB. Also, the
  582. # device has a hard-coded kernel command line that requieres the
  583. # rootfs and alt_rootfs to be in mtd11 and mtd13 respectively.
  584. # Oh... and the kernel partition overlaps with the rootfs
  585. # partition (the same for alt_kernel and alt_rootfs).
  586. #
  587. # If you are planing re-partitioning the device, you may want to
  588. # keep those details in mind:
  589. # 1. The kernel adresses you should honor are 0x00000000 and
  590. # 0x02800000 respectively.
  591. # 2. The kernel size (plus the dtb) cannot exceed 3.00MiB in size.
  592. # 3. You can use 'zImage', but not a raw 'Image' packed with lzma.
  593. # 4. The kernel command line from uboot is harcoded to boot with
  594. # rootfs either in mtd11 or mtd13.
  595. $(call Device/FitzImage)
  596. DEVICE_VENDOR := Linksys
  597. DEVICE_MODEL := EA6350
  598. DEVICE_VARIANT := v3
  599. SOC := qcom-ipq4018
  600. BLOCKSIZE := 128k
  601. PAGESIZE := 2048
  602. KERNEL_SIZE := 3072k
  603. IMAGE_SIZE := 37888k
  604. UBINIZE_OPTS := -E 5
  605. IMAGES += factory.bin
  606. IMAGE/factory.bin := append-kernel | append-uImage-fakehdr filesystem | pad-to $$$$(KERNEL_SIZE) | append-ubi | linksys-image type=EA6350v3
  607. DEFAULT := n
  608. endef
  609. TARGET_DEVICES += linksys_ea6350v3
  610. define Device/linksys_ea8300
  611. $(call Device/FitzImage)
  612. DEVICE_VENDOR := Linksys
  613. DEVICE_MODEL := EA8300
  614. SOC := qcom-ipq4019
  615. KERNEL_SIZE := 3072k
  616. IMAGE_SIZE := 87040k
  617. BLOCKSIZE := 128k
  618. PAGESIZE := 2048
  619. UBINIZE_OPTS := -E 5 # EOD marks to "hide" factory sig at EOF
  620. IMAGES += factory.bin
  621. IMAGE/factory.bin := append-kernel | pad-to $$$$(KERNEL_SIZE) | append-ubi | linksys-image type=EA8300
  622. DEVICE_PACKAGES := ath10k-firmware-qca9888-ct ipq-wifi-linksys_ea8300 kmod-usb-ledtrig-usbport
  623. DEFAULT := n
  624. endef
  625. TARGET_DEVICES += linksys_ea8300
  626. define Device/linksys_mr8300
  627. $(call Device/FitzImage)
  628. DEVICE_VENDOR := Linksys
  629. DEVICE_MODEL := MR8300
  630. SOC := qcom-ipq4019
  631. KERNEL_SIZE := 3072k
  632. IMAGE_SIZE := 87040k
  633. BLOCKSIZE := 128k
  634. PAGESIZE := 2048
  635. UBINIZE_OPTS := -E 5 # EOD marks to "hide" factory sig at EOF
  636. IMAGES += factory.bin
  637. IMAGE/factory.bin := append-kernel | pad-to $$$$(KERNEL_SIZE) | append-ubi | linksys-image type=MR8300
  638. DEVICE_PACKAGES := ath10k-firmware-qca9888-ct kmod-usb-ledtrig-usbport
  639. DEFAULT := n
  640. endef
  641. TARGET_DEVICES += linksys_mr8300
  642. define Device/linksys_whw01-v1
  643. $(call Device/FitzImage)
  644. DEVICE_VENDOR := Linksys
  645. DEVICE_MODEL := WHW01
  646. DEVICE_VARIANT := v1
  647. KERNEL_SIZE := 6144k
  648. IMAGE_SIZE := 28704512 # 28032k minus linksys signature (256-bytes).
  649. SOC := qcom-ipq4018
  650. BLOCKSIZE := 128k
  651. PAGESIZE := 2048
  652. UBINIZE_OPTS := -E 5 # EOD marks to "hide" factory sig at EOF
  653. IMAGES += factory.bin
  654. IMAGE/factory.bin := append-kernel | pad-to $$$$(KERNEL_SIZE) | \
  655. append-ubi | linksys-image type=WHW01 | pad-to $$$$(PAGESIZE) | \
  656. check-size
  657. DEVICE_PACKAGES := uboot-envtools kmod-leds-pca963x
  658. endef
  659. # Missing DSA Setup
  660. #TARGET_DEVICES += linksys_whw01-v1
  661. define Device/luma_wrtq-329acn
  662. $(call Device/FitImage)
  663. DEVICE_VENDOR := Luma Home
  664. DEVICE_MODEL := WRTQ-329ACN
  665. SOC := qcom-ipq4018
  666. DEVICE_PACKAGES := kmod-ath3k kmod-eeprom-at24 kmod-i2c-gpio
  667. IMAGE_SIZE := 76632k
  668. BLOCKSIZE := 128k
  669. PAGESIZE := 2048
  670. endef
  671. TARGET_DEVICES += luma_wrtq-329acn
  672. define Device/meraki_mr33
  673. $(call Device/FitImage)
  674. DEVICE_VENDOR := Cisco Meraki
  675. DEVICE_MODEL := MR33
  676. SOC := qcom-ipq4029
  677. BLOCKSIZE := 128k
  678. PAGESIZE := 2048
  679. DEVICE_PACKAGES := -swconfig ath10k-firmware-qca9887-ct
  680. endef
  681. TARGET_DEVICES += meraki_mr33
  682. define Device/meraki_mr74
  683. $(call Device/FitImage)
  684. DEVICE_VENDOR := Cisco Meraki
  685. DEVICE_MODEL := MR74
  686. SOC := qcom-ipq4029
  687. BLOCKSIZE := 128k
  688. PAGESIZE := 2048
  689. DEVICE_PACKAGES := -swconfig ath10k-firmware-qca9887-ct
  690. DEVICE_DTS_CONFIG := config@3
  691. endef
  692. TARGET_DEVICES += meraki_mr74
  693. define Device/mobipromo_cm520-79f
  694. $(call Device/FitzImage)
  695. $(call Device/UbiFit)
  696. DEVICE_VENDOR := MobiPromo
  697. DEVICE_MODEL := CM520-79F
  698. SOC := qcom-ipq4019
  699. BLOCKSIZE := 128k
  700. PAGESIZE := 2048
  701. DEVICE_PACKAGES := kmod-usb-ledtrig-usbport
  702. endef
  703. TARGET_DEVICES += mobipromo_cm520-79f
  704. define Device/netgear_ex61x0v2
  705. $(call Device/DniImage)
  706. DEVICE_VENDOR := NETGEAR
  707. DEVICE_DTS_CONFIG := config@4
  708. NETGEAR_BOARD_ID := EX6150v2series
  709. NETGEAR_HW_ID := 29765285+16+0+128+2x2
  710. IMAGE_SIZE := 14400k
  711. SOC := qcom-ipq4018
  712. endef
  713. define Device/netgear_ex6100v2
  714. $(call Device/netgear_ex61x0v2)
  715. DEVICE_MODEL := EX6100
  716. DEVICE_VARIANT := v2
  717. endef
  718. # Missing DSA Setup
  719. #TARGET_DEVICES += netgear_ex6100v2
  720. define Device/netgear_ex6150v2
  721. $(call Device/netgear_ex61x0v2)
  722. DEVICE_MODEL := EX6150
  723. DEVICE_VARIANT := v2
  724. endef
  725. # Missing DSA Setup
  726. #TARGET_DEVICES += netgear_ex6150v2
  727. define Device/netgear_orbi
  728. $(call Device/DniImage)
  729. SOC := qcom-ipq4019
  730. DEVICE_VENDOR := NETGEAR
  731. IMAGE/factory.img := append-kernel | pad-offset 128k 64 | \
  732. append-uImage-fakehdr filesystem | pad-to $$$$(KERNEL_SIZE) | \
  733. append-rootfs | pad-rootfs | netgear-dni
  734. IMAGE/sysupgrade.bin/squashfs := append-rootfs | pad-to 64k | \
  735. sysupgrade-tar rootfs=$$$$@ | append-metadata
  736. DEVICE_PACKAGES := ath10k-firmware-qca9984-ct e2fsprogs kmod-fs-ext4 losetup
  737. endef
  738. define Device/netgear_rbx50
  739. $(call Device/netgear_orbi)
  740. NETGEAR_HW_ID := 29765352+0+4000+512+2x2+2x2+4x4
  741. KERNEL_SIZE := 3932160
  742. ROOTFS_SIZE := 32243712
  743. IMAGE_SIZE := 36175872
  744. endef
  745. define Device/netgear_rbr50
  746. $(call Device/netgear_rbx50)
  747. DEVICE_MODEL := RBR50
  748. DEVICE_VARIANT := v1
  749. NETGEAR_BOARD_ID := RBR50
  750. endef
  751. TARGET_DEVICES += netgear_rbr50
  752. define Device/netgear_rbs50
  753. $(call Device/netgear_rbx50)
  754. DEVICE_MODEL := RBS50
  755. DEVICE_VARIANT := v1
  756. NETGEAR_BOARD_ID := RBS50
  757. endef
  758. TARGET_DEVICES += netgear_rbs50
  759. define Device/netgear_srx60
  760. $(call Device/netgear_orbi)
  761. NETGEAR_HW_ID := 29765352+0+4096+512+2x2+2x2+4x4
  762. KERNEL_SIZE := 3932160
  763. ROOTFS_SIZE := 32243712
  764. IMAGE_SIZE := 36175872
  765. endef
  766. define Device/netgear_srr60
  767. $(call Device/netgear_srx60)
  768. DEVICE_MODEL := SRR60
  769. NETGEAR_BOARD_ID := SRR60
  770. endef
  771. TARGET_DEVICES += netgear_srr60
  772. define Device/netgear_srs60
  773. $(call Device/netgear_srx60)
  774. DEVICE_MODEL := SRS60
  775. NETGEAR_BOARD_ID := SRS60
  776. endef
  777. TARGET_DEVICES += netgear_srs60
  778. define Device/netgear_wac510
  779. $(call Device/FitImage)
  780. $(call Device/UbiFit)
  781. DEVICE_VENDOR := Netgear
  782. DEVICE_MODEL := WAC510
  783. SOC := qcom-ipq4018
  784. DEVICE_DTS_CONFIG := config@5
  785. BLOCKSIZE := 128k
  786. PAGESIZE := 2048
  787. IMAGES += nand-factory.tar
  788. IMAGE/nand-factory.tar := append-ubi | wac5xx-netgear-tar
  789. DEVICE_PACKAGES := uboot-envtools
  790. endef
  791. TARGET_DEVICES += netgear_wac510
  792. define Device/openmesh_a42
  793. $(call Device/FitImageLzma)
  794. DEVICE_VENDOR := OpenMesh
  795. DEVICE_MODEL := A42
  796. SOC := qcom-ipq4018
  797. DEVICE_DTS_CONFIG := [email protected]
  798. BLOCKSIZE := 64k
  799. KERNEL = kernel-bin | lzma | fit lzma $$(KDIR)/image-$$(DEVICE_DTS).dtb | pad-to $$(BLOCKSIZE)
  800. IMAGE_SIZE := 15616k
  801. IMAGES += factory.bin
  802. IMAGE/factory.bin := append-rootfs | pad-rootfs | openmesh-image ce_type=A42
  803. IMAGE/sysupgrade.bin/squashfs := append-rootfs | pad-rootfs | sysupgrade-tar rootfs=$$$$@ | append-metadata
  804. endef
  805. # Missing DSA Setup
  806. #TARGET_DEVICES += openmesh_a42
  807. define Device/openmesh_a62
  808. $(call Device/FitImageLzma)
  809. DEVICE_VENDOR := OpenMesh
  810. DEVICE_MODEL := A62
  811. SOC := qcom-ipq4019
  812. DEVICE_DTS_CONFIG := [email protected]
  813. BLOCKSIZE := 64k
  814. KERNEL = kernel-bin | lzma | fit lzma $$(KDIR)/image-$$(DEVICE_DTS).dtb | pad-to $$(BLOCKSIZE)
  815. IMAGE_SIZE := 15552k
  816. IMAGES += factory.bin
  817. IMAGE/factory.bin := append-rootfs | pad-rootfs | openmesh-image ce_type=A62
  818. IMAGE/sysupgrade.bin/squashfs := append-rootfs | pad-rootfs | sysupgrade-tar rootfs=$$$$@ | append-metadata
  819. DEVICE_PACKAGES := ath10k-firmware-qca9888-ct
  820. endef
  821. # Missing DSA Setup
  822. #TARGET_DEVICES += openmesh_a62
  823. define Device/p2w_r619ac
  824. $(call Device/FitzImage)
  825. $(call Device/UbiFit)
  826. DEVICE_VENDOR := P&W
  827. DEVICE_MODEL := R619AC
  828. SOC := qcom-ipq4019
  829. DEVICE_DTS_CONFIG := config@10
  830. BLOCKSIZE := 128k
  831. PAGESIZE := 2048
  832. DEVICE_PACKAGES := ipq-wifi-p2w_r619ac
  833. endef
  834. define Device/p2w_r619ac-64m
  835. $(call Device/p2w_r619ac)
  836. DEVICE_VARIANT := 64M NAND
  837. IMAGES += nand-factory.bin
  838. IMAGE/nand-factory.bin := append-ubi | qsdk-ipq-factory-nand
  839. endef
  840. TARGET_DEVICES += p2w_r619ac-64m
  841. define Device/p2w_r619ac-128m
  842. $(call Device/p2w_r619ac)
  843. DEVICE_VARIANT := 128M NAND
  844. endef
  845. TARGET_DEVICES += p2w_r619ac-128m
  846. define Device/pakedge_wr-1
  847. $(call Device/FitImageLzma)
  848. DEVICE_VENDOR := Pakedge
  849. DEVICE_MODEL := WR-1
  850. DEVICE_DTS_CONFIG := [email protected]
  851. DEVICE_PACKAGES := ipq-wifi-pakedge_wr-1
  852. SOC := qcom-ipq4018
  853. BLOCKSIZE := 64k
  854. IMAGE_SIZE := 31232k
  855. IMAGE/sysupgrade.bin := append-kernel | pad-to $$$$(BLOCKSIZE) | append-rootfs | pad-rootfs | append-metadata
  856. endef
  857. TARGET_DEVICES += pakedge_wr-1
  858. define Device/plasmacloud_pa1200
  859. $(call Device/FitImageLzma)
  860. DEVICE_VENDOR := Plasma Cloud
  861. DEVICE_MODEL := PA1200
  862. SOC := qcom-ipq4018
  863. DEVICE_DTS_CONFIG := [email protected]
  864. BLOCKSIZE := 64k
  865. KERNEL = kernel-bin | lzma | fit lzma $$(KDIR)/image-$$(DEVICE_DTS).dtb | pad-to $$(BLOCKSIZE)
  866. IMAGE_SIZE := 15616k
  867. IMAGES += factory.bin
  868. IMAGE/factory.bin := append-rootfs | pad-rootfs | openmesh-image ce_type=PA1200
  869. IMAGE/sysupgrade.bin/squashfs := append-rootfs | pad-rootfs | sysupgrade-tar rootfs=$$$$@ | append-metadata
  870. endef
  871. # Missing DSA Setup
  872. #TARGET_DEVICES += plasmacloud_pa1200
  873. define Device/plasmacloud_pa2200
  874. $(call Device/FitImageLzma)
  875. DEVICE_VENDOR := Plasma Cloud
  876. DEVICE_MODEL := PA2200
  877. SOC := qcom-ipq4019
  878. DEVICE_DTS_CONFIG := [email protected]
  879. BLOCKSIZE := 64k
  880. KERNEL = kernel-bin | lzma | fit lzma $$(KDIR)/image-$$(DEVICE_DTS).dtb | pad-to $$(BLOCKSIZE)
  881. IMAGE_SIZE := 15552k
  882. IMAGES += factory.bin
  883. IMAGE/factory.bin := append-rootfs | pad-rootfs | openmesh-image ce_type=PA2200
  884. IMAGE/sysupgrade.bin/squashfs := append-rootfs | pad-rootfs | sysupgrade-tar rootfs=$$$$@ | append-metadata
  885. DEVICE_PACKAGES := ath10k-firmware-qca9888-ct
  886. endef
  887. # Missing DSA Setup
  888. #TARGET_DEVICES += plasmacloud_pa2200
  889. define Device/qcom_ap-dk01.1-c1
  890. DEVICE_VENDOR := Qualcomm Atheros
  891. DEVICE_MODEL := AP-DK01.1
  892. DEVICE_VARIANT := C1
  893. BOARD_NAME := ap-dk01.1-c1
  894. SOC := qcom-ipq4019
  895. DEVICE_DTS := qcom-ipq4019-ap.dk01.1-c1
  896. KERNEL_INSTALL := 1
  897. KERNEL_SIZE := 4096k
  898. IMAGE_SIZE := 26624k
  899. $(call Device/FitImage)
  900. IMAGE/sysupgrade.bin := append-kernel | pad-to $$$$(KERNEL_SIZE) | append-rootfs | pad-rootfs | append-metadata
  901. DEFAULT := n
  902. endef
  903. TARGET_DEVICES += qcom_ap-dk01.1-c1
  904. define Device/qcom_ap-dk04.1-c1
  905. $(call Device/FitImage)
  906. $(call Device/UbiFit)
  907. DEVICE_VENDOR := Qualcomm Atheros
  908. DEVICE_MODEL := AP-DK04.1
  909. DEVICE_VARIANT := C1
  910. SOC := qcom-ipq4019
  911. DEVICE_DTS := qcom-ipq4019-ap.dk04.1-c1
  912. KERNEL_INSTALL := 1
  913. KERNEL_SIZE := 4048k
  914. BLOCKSIZE := 128k
  915. PAGESIZE := 2048
  916. BOARD_NAME := ap-dk04.1-c1
  917. DEFAULT := n
  918. endef
  919. TARGET_DEVICES += qcom_ap-dk04.1-c1
  920. define Device/qxwlan_e2600ac-c1
  921. $(call Device/FitImage)
  922. DEVICE_VENDOR := Qxwlan
  923. DEVICE_MODEL := E2600AC
  924. DEVICE_VARIANT := C1
  925. BOARD_NAME := e2600ac-c1
  926. SOC := qcom-ipq4019
  927. KERNEL_SIZE := 4096k
  928. IMAGE_SIZE := 31232k
  929. IMAGE/sysupgrade.bin := append-kernel | append-rootfs | pad-rootfs | append-metadata
  930. DEVICE_PACKAGES := ipq-wifi-qxwlan_e2600ac-c1
  931. DEFAULT := n
  932. endef
  933. # Missing DSA Setup
  934. #TARGET_DEVICES += qxwlan_e2600ac-c1
  935. define Device/qxwlan_e2600ac-c2
  936. $(call Device/FitImage)
  937. $(call Device/UbiFit)
  938. DEVICE_VENDOR := Qxwlan
  939. DEVICE_MODEL := E2600AC
  940. DEVICE_VARIANT := C2
  941. SOC := qcom-ipq4019
  942. KERNEL_INSTALL := 1
  943. BLOCKSIZE := 128k
  944. PAGESIZE := 2048
  945. DEVICE_PACKAGES := ipq-wifi-qxwlan_e2600ac-c2
  946. endef
  947. # Missing DSA Setup
  948. #TARGET_DEVICES += qxwlan_e2600ac-c2
  949. define Device/sony_ncp-hg100-cellular
  950. $(call Device/FitImage)
  951. DEVICE_VENDOR := Sony
  952. DEVICE_MODEL := NCP-HG100/Cellular
  953. DEVICE_DTS_CONFIG := [email protected]
  954. SOC := qcom-ipq4019
  955. KERNEL_SIZE := 8192k
  956. IMAGE_SIZE := 128m
  957. DEVICE_PACKAGES := e2fsprogs ipq-wifi-sony_ncp-hg100-cellular \
  958. kmod-fs-ext4 uqmi
  959. endef
  960. TARGET_DEVICES += sony_ncp-hg100-cellular
  961. define Device/teltonika_rutx10
  962. $(call Device/FitImage)
  963. $(call Device/UbiFit)
  964. DEVICE_VENDOR := Teltonika
  965. DEVICE_MODEL := RUTX10
  966. SOC := qcom-ipq4018
  967. DEVICE_DTS_CONFIG := config@5
  968. KERNEL_INSTALL := 1
  969. BLOCKSIZE := 128k
  970. PAGESIZE := 2048
  971. FILESYSTEMS := squashfs
  972. IMAGE/nand-factory.ubi := append-ubi | qsdk-ipq-factory-nand | append-rutx-metadata
  973. DEVICE_PACKAGES := ipq-wifi-teltonika_rutx kmod-bluetooth
  974. endef
  975. # Missing DSA Setup
  976. #TARGET_DEVICES += teltonika_rutx10
  977. define Device/tel_x1pro
  978. $(call Device/FitImage)
  979. DEVICE_VENDOR := Telco
  980. DEVICE_MODEL := X1 Pro
  981. SOC := qcom-ipq4019
  982. KERNEL_SIZE := 4096k
  983. IMAGE_SIZE := 31232k
  984. IMAGE/sysupgrade.bin := append-kernel | append-rootfs | pad-rootfs | append-metadata
  985. DEVICE_PACKAGES := kmod-usb-net-qmi-wwan kmod-usb-serial-option uqmi
  986. DEFAULT := n
  987. endef
  988. # Missing DSA Setup
  989. #TARGET_DEVICES += tel_x1pro
  990. define Device/unielec_u4019-32m
  991. $(call Device/FitImage)
  992. DEVICE_VENDOR := Unielec
  993. DEVICE_MODEL := U4019
  994. DEVICE_VARIANT := 32M
  995. BOARD_NAME := u4019-32m
  996. SOC := qcom-ipq4019
  997. KERNEL_SIZE := 4096k
  998. IMAGE_SIZE := 31232k
  999. IMAGE/sysupgrade.bin := append-kernel | append-rootfs | pad-rootfs | append-metadata
  1000. DEFAULT := n
  1001. endef
  1002. # Missing DSA Setup
  1003. #TARGET_DEVICES += unielec_u4019-32m
  1004. define Device/zte_mf28x_common
  1005. $(call Device/FitzImage)
  1006. DEVICE_VENDOR := ZTE
  1007. SOC := qcom-ipq4019
  1008. DEVICE_DTS_CONFIG := [email protected]
  1009. BLOCKSIZE := 128k
  1010. PAGESIZE := 2048
  1011. KERNEL_IN_UBI := 1
  1012. DEVICE_PACKAGES := kmod-usb-net-qmi-wwan kmod-usb-serial-option uqmi
  1013. endef
  1014. define Device/zte_mf286d
  1015. $(call Device/zte_mf28x_common)
  1016. DEVICE_MODEL := MF286D
  1017. endef
  1018. TARGET_DEVICES += zte_mf286d
  1019. define Device/zte_mf289f
  1020. $(call Device/zte_mf28x_common)
  1021. DEVICE_MODEL := MF289F
  1022. DEVICE_PACKAGES += ipq-wifi-zte_mf289f ath10k-firmware-qca9984-ct
  1023. endef
  1024. TARGET_DEVICES += zte_mf289f
  1025. define Device/zyxel_nbg6617
  1026. $(call Device/FitImageLzma)
  1027. DEVICE_VENDOR := ZyXEL
  1028. DEVICE_MODEL := NBG6617
  1029. SOC := qcom-ipq4018
  1030. KERNEL_SIZE := 4096k
  1031. ROOTFS_SIZE := 24960k
  1032. RAS_BOARD := NBG6617
  1033. RAS_ROOTFS_SIZE := 19840k
  1034. RAS_VERSION := "$(VERSION_DIST) $(REVISION)"
  1035. IMAGE/sysupgrade.bin := append-kernel | append-rootfs | pad-rootfs | append-metadata
  1036. IMAGES += factory.bin
  1037. # The ZyXEL firmware allows flashing thru the web-gui only when the rootfs is
  1038. # at least as large as the one of the initial firmware image (not the current
  1039. # one on the device). This only applies to the Web-UI, the bootlaoder ignores
  1040. # this minimum-size. However, the larger image can be flashed both ways.
  1041. IMAGE/factory.bin := append-rootfs | pad-rootfs | pad-to 64k | check-size $$$$(ROOTFS_SIZE) | zyxel-ras-image separate-kernel
  1042. IMAGE/sysupgrade.bin/squashfs := append-rootfs | pad-rootfs | check-size $$$$(ROOTFS_SIZE) | sysupgrade-tar rootfs=$$$$@ | append-metadata
  1043. DEVICE_PACKAGES := kmod-usb-ledtrig-usbport
  1044. endef
  1045. TARGET_DEVICES += zyxel_nbg6617
  1046. define Device/zyxel_wre6606
  1047. $(call Device/FitImage)
  1048. DEVICE_VENDOR := ZyXEL
  1049. DEVICE_MODEL := WRE6606
  1050. DEVICE_DTS_CONFIG := config@4
  1051. SOC := qcom-ipq4018
  1052. IMAGE_SIZE := 13184k
  1053. IMAGE/sysupgrade.bin := append-kernel | append-rootfs | pad-rootfs | check-size | append-metadata
  1054. DEVICE_PACKAGES := -kmod-ath10k-ct kmod-ath10k-ct-smallbuffers
  1055. endef
  1056. # Missing DSA Setup
  1057. #TARGET_DEVICES += zyxel_wre6606