nand.mk 16 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540
  1. define Build/dongwon-header
  2. head -c 4 $@ > [email protected]
  3. head -c 8 /dev/zero >> [email protected]
  4. tail -c +9 $@ >> [email protected]
  5. ( \
  6. header_crc="$$(head -c 68 [email protected] | gzip -c | \
  7. tail -c 8 | od -An -N4 -tx4 --endian little | tr -d ' \n')"; \
  8. printf "$$(echo $$header_crc | sed 's/../\\x&/g')" | \
  9. dd [email protected] bs=4 count=1 seek=1 conv=notrunc \
  10. )
  11. mv [email protected] $@
  12. endef
  13. define Build/meraki-header
  14. -$(STAGING_DIR_HOST)/bin/mkmerakifw \
  15. -B $(1) -s \
  16. -i $@ \
  17. -o [email protected]
  18. @mv [email protected] $@
  19. endef
  20. # attention: only zlib compression is allowed for the boot fs
  21. define Build/zyxel-buildkerneljffs
  22. mkdir -p [email protected]/boot
  23. cp $@ [email protected]/boot/vmlinux.lzma.uImage
  24. $(STAGING_DIR_HOST)/bin/mkfs.jffs2 \
  25. --big-endian --squash-uids -v -e 128KiB -q -f -n -x lzma -x rtime \
  26. -o $@ \
  27. -d [email protected]
  28. rm -rf [email protected]
  29. endef
  30. define Build/zyxel-factory
  31. let \
  32. maxsize="$(call exp_units,$(RAS_ROOTFS_SIZE))"; \
  33. let size="$$(stat -c%s $@)"; \
  34. if [ $$size -lt $$maxsize ]; then \
  35. $(STAGING_DIR_HOST)/bin/mkrasimage \
  36. -b $(RAS_BOARD) \
  37. -v $(RAS_VERSION) \
  38. -r $@ \
  39. -s $$maxsize \
  40. -o [email protected] \
  41. -l 131072 \
  42. && mv [email protected] $@ ; \
  43. fi
  44. endef
  45. define Device/8dev_rambutan
  46. SOC := qca9557
  47. DEVICE_VENDOR := 8devices
  48. DEVICE_MODEL := Rambutan
  49. DEVICE_PACKAGES := kmod-usb2
  50. BLOCKSIZE := 128k
  51. PAGESIZE := 2048
  52. KERNEL_SIZE := 4096k
  53. KERNEL_IN_UBI := 1
  54. IMAGES := factory.bin sysupgrade.tar
  55. IMAGE/sysupgrade.tar := sysupgrade-tar | append-metadata
  56. IMAGE/factory.bin := append-ubi
  57. endef
  58. TARGET_DEVICES += 8dev_rambutan
  59. define Device/aerohive_hiveap-121
  60. SOC := ar9344
  61. DEVICE_VENDOR := Aerohive
  62. DEVICE_MODEL := HiveAP 121
  63. DEVICE_PACKAGES := kmod-usb2
  64. BLOCKSIZE := 128k
  65. PAGESIZE := 2048
  66. IMAGE_SIZE := 116m
  67. KERNEL_SIZE := 5120k
  68. UBINIZE_OPTS := -E 5
  69. SUPPORTED_DEVICES += hiveap-121
  70. IMAGES += factory.bin
  71. IMAGE/factory.bin := append-kernel | pad-to $$$$(KERNEL_SIZE) | append-ubi | \
  72. check-size
  73. IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata
  74. endef
  75. TARGET_DEVICES += aerohive_hiveap-121
  76. define Device/domywifi_dw33d
  77. SOC := qca9558
  78. DEVICE_VENDOR := DomyWifi
  79. DEVICE_MODEL := DW33D
  80. DEVICE_PACKAGES := kmod-usb2 kmod-usb-storage kmod-usb-ledtrig-usbport \
  81. kmod-ath10k-ct ath10k-firmware-qca988x-ct
  82. KERNEL_SIZE := 5120k
  83. IMAGE_SIZE := 98304k
  84. BLOCKSIZE := 128k
  85. PAGESIZE := 2048
  86. UBINIZE_OPTS := -E 5
  87. IMAGES += factory.bin
  88. IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata
  89. IMAGE/factory.bin := append-kernel | pad-to $$$$(KERNEL_SIZE) | append-ubi | \
  90. check-size
  91. endef
  92. TARGET_DEVICES += domywifi_dw33d
  93. define Device/dongwon_dw02-412h
  94. SOC := qca9557
  95. DEVICE_VENDOR := Dongwon T&I
  96. DEVICE_MODEL := DW02-412H
  97. DEVICE_ALT0_VENDOR := KT
  98. DEVICE_ALT0_MODEL := GiGA WiFi home
  99. DEVICE_PACKAGES := kmod-usb2 kmod-ath10k-ct ath10k-firmware-qca988x-ct
  100. KERNEL_SIZE := 8192k
  101. BLOCKSIZE := 128k
  102. PAGESIZE := 2048
  103. KERNEL := $$(KERNEL) | dongwon-header
  104. KERNEL_INITRAMFS := $$(KERNEL)
  105. UBINIZE_OPTS := -E 5
  106. IMAGES += factory.img
  107. IMAGE/factory.img := append-kernel | pad-to $$$$(KERNEL_SIZE) | append-ubi | \
  108. check-size
  109. IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata
  110. endef
  111. define Device/dongwon_dw02-412h-64m
  112. $(Device/dongwon_dw02-412h)
  113. DEVICE_VARIANT := (64M)
  114. DEVICE_ALT0_VARIANT := (64M)
  115. IMAGE_SIZE := 49152k
  116. endef
  117. TARGET_DEVICES += dongwon_dw02-412h-64m
  118. define Device/dongwon_dw02-412h-128m
  119. $(Device/dongwon_dw02-412h)
  120. DEVICE_VARIANT := (128M)
  121. DEVICE_ALT0_VARIANT := (128M)
  122. IMAGE_SIZE := 114688k
  123. endef
  124. TARGET_DEVICES += dongwon_dw02-412h-128m
  125. define Device/glinet_gl-ar300m-common-nand
  126. SOC := qca9531
  127. DEVICE_VENDOR := GL.iNet
  128. DEVICE_MODEL := GL-AR300M
  129. DEVICE_PACKAGES := kmod-usb2
  130. KERNEL_SIZE := 4096k
  131. IMAGE_SIZE := 16000k
  132. PAGESIZE := 2048
  133. VID_HDR_OFFSET := 2048
  134. endef
  135. define Device/glinet_gl-ar300m-nand
  136. $(Device/glinet_gl-ar300m-common-nand)
  137. DEVICE_VARIANT := NAND
  138. BLOCKSIZE := 128k
  139. IMAGES += factory.img
  140. IMAGE/factory.img := append-kernel | pad-to $$$$(KERNEL_SIZE) | append-ubi
  141. IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata
  142. SUPPORTED_DEVICES += glinet,gl-ar300m-nor
  143. endef
  144. TARGET_DEVICES += glinet_gl-ar300m-nand
  145. define Device/glinet_gl-ar300m-nor
  146. $(Device/glinet_gl-ar300m-common-nand)
  147. DEVICE_VARIANT := NOR
  148. SUPPORTED_DEVICES += glinet,gl-ar300m-nand gl-ar300m
  149. endef
  150. TARGET_DEVICES += glinet_gl-ar300m-nor
  151. define Device/glinet_gl-ar750s-common
  152. SOC := qca9563
  153. DEVICE_VENDOR := GL.iNet
  154. DEVICE_MODEL := GL-AR750S
  155. DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca9887-ct kmod-usb2 \
  156. kmod-usb-storage block-mount
  157. IMAGE_SIZE := 16000k
  158. endef
  159. define Device/glinet_gl-ar750s-nor-nand
  160. $(Device/glinet_gl-ar750s-common)
  161. DEVICE_VARIANT := NOR/NAND
  162. KERNEL_SIZE := 4096k
  163. IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata
  164. SUPPORTED_DEVICES += glinet,gl-ar750s-nor
  165. endef
  166. TARGET_DEVICES += glinet_gl-ar750s-nor-nand
  167. define Device/glinet_gl-ar750s-nor
  168. $(Device/glinet_gl-ar750s-common)
  169. DEVICE_VARIANT := NOR
  170. SUPPORTED_DEVICES += gl-ar750s glinet,gl-ar750s glinet,gl-ar750s-nor-nand
  171. endef
  172. TARGET_DEVICES += glinet_gl-ar750s-nor
  173. define Device/glinet_gl-e750
  174. SOC := qca9531
  175. DEVICE_VENDOR := GL.iNet
  176. DEVICE_MODEL := GL-E750
  177. DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca9887-ct kmod-usb2 \
  178. kmod-usb-net-qmi-wwan kmod-usb-serial-option uqmi
  179. SUPPORTED_DEVICES += gl-e750
  180. KERNEL_SIZE := 4096k
  181. IMAGE_SIZE := 131072k
  182. PAGESIZE := 2048
  183. VID_HDR_OFFSET := 2048
  184. BLOCKSIZE := 128k
  185. IMAGES += factory.img
  186. IMAGE/factory.img := append-kernel | pad-to $$$$(KERNEL_SIZE) | append-ubi
  187. IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata
  188. endef
  189. TARGET_DEVICES += glinet_gl-e750
  190. define Device/glinet_gl-s200-common
  191. SOC := qca9531
  192. DEVICE_VENDOR := GL.iNet
  193. DEVICE_MODEL := GL-S200
  194. DEVICE_PACKAGES := kmod-usb2 kmod-usb-serial-ch341
  195. SUPPORTED_DEVICES += gl-s200 glinet,gl-s200
  196. endef
  197. define Device/glinet_gl-s200-nor
  198. $(Device/glinet_gl-s200-common)
  199. DEVICE_VARIANT := NOR
  200. IMAGE_SIZE := 16000k
  201. endef
  202. TARGET_DEVICES += glinet_gl-s200-nor
  203. define Device/glinet_gl-s200-nor-nand
  204. $(Device/glinet_gl-s200-common)
  205. DEVICE_VARIANT := NOR/NAND
  206. KERNEL_SIZE := 4096k
  207. BLOCKSIZE := 128k
  208. PAGESIZE := 2048
  209. VID_HDR_OFFSET := 2048
  210. IMAGES += factory.img
  211. IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata
  212. IMAGE/factory.img := append-kernel | pad-to $$$$(KERNEL_SIZE) | append-ubi
  213. SUPPORTED_DEVICES += gl-s200 glinet,gl-s200
  214. endef
  215. TARGET_DEVICES += glinet_gl-s200-nor-nand
  216. define Device/glinet_gl-xe300
  217. SOC := qca9531
  218. DEVICE_VENDOR := GL.iNet
  219. DEVICE_MODEL := GL-XE300
  220. DEVICE_PACKAGES := kmod-usb2 block-mount kmod-usb-serial-ch341 \
  221. kmod-usb-serial-option kmod-usb-net-qmi-wwan uqmi
  222. KERNEL_SIZE := 4096k
  223. IMAGE_SIZE := 131072k
  224. PAGESIZE := 2048
  225. VID_HDR_OFFSET := 2048
  226. BLOCKSIZE := 128k
  227. IMAGES += factory.img
  228. IMAGE/factory.img := append-kernel | pad-to $$$$(KERNEL_SIZE) | append-ubi
  229. IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata
  230. endef
  231. TARGET_DEVICES += glinet_gl-xe300
  232. define Device/glinet_gl-x1200-common
  233. SOC := qca9563
  234. DEVICE_VENDOR := GL.iNet
  235. DEVICE_MODEL := GL-X1200
  236. DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca9888-ct-htt kmod-usb2 \
  237. kmod-usb-storage block-mount kmod-usb-net-qmi-wwan uqmi
  238. IMAGE_SIZE := 16000k
  239. endef
  240. define Device/glinet_gl-x1200-nor-nand
  241. $(Device/glinet_gl-x1200-common)
  242. DEVICE_VARIANT := NOR/NAND
  243. KERNEL_SIZE := 4096k
  244. IMAGE_SIZE := 131072k
  245. PAGESIZE := 2048
  246. VID_HDR_OFFSET := 2048
  247. BLOCKSIZE := 128k
  248. IMAGES += factory.img
  249. IMAGE/factory.img := append-kernel | pad-to $$$$(KERNEL_SIZE) | append-ubi
  250. IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata
  251. endef
  252. TARGET_DEVICES += glinet_gl-x1200-nor-nand
  253. define Device/glinet_gl-x1200-nor
  254. $(Device/glinet_gl-x1200-common)
  255. DEVICE_VARIANT := NOR
  256. endef
  257. TARGET_DEVICES += glinet_gl-x1200-nor
  258. define Device/linksys_ea4500-v3
  259. SOC := qca9558
  260. DEVICE_COMPAT_VERSION := 1.1
  261. DEVICE_COMPAT_MESSAGE := Partition table has been changed. Please \
  262. install kmod-mtd-rw and erase mtd8 (syscfg) before upgrade \
  263. to keep configures, or forcibly flash factory image to mtd5 \
  264. (firmware) partition with mtd tool to discard configures but \
  265. claim additional space immediately.
  266. DEVICE_VENDOR := Linksys
  267. DEVICE_MODEL := EA4500
  268. DEVICE_VARIANT := v3
  269. DEVICE_PACKAGES := kmod-usb2
  270. BLOCKSIZE := 128k
  271. PAGESIZE := 2048
  272. KERNEL_SIZE := 4096k
  273. IMAGE_SIZE := 128256k
  274. IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata
  275. LINKSYS_HWNAME := EA4500V3
  276. IMAGES += factory.img
  277. IMAGE/factory.img := append-kernel | pad-to $$$$(KERNEL_SIZE) | \
  278. append-ubi | check-size | linksys-image type=$$$$(LINKSYS_HWNAME)
  279. UBINIZE_OPTS := -E 5
  280. endef
  281. TARGET_DEVICES += linksys_ea4500-v3
  282. define Device/meraki_mr18
  283. SOC := qca9557
  284. DEVICE_VENDOR := Meraki
  285. DEVICE_MODEL := MR18
  286. DEVICE_PACKAGES := kmod-leds-uleds kmod-spi-gpio nu801
  287. KERNEL_SIZE := 8m
  288. BLOCKSIZE := 128k
  289. PAGESIZE := 2048
  290. LOADER_TYPE := bin
  291. LZMA_TEXT_START := 0x82800000
  292. KERNEL := kernel-bin | append-dtb | lzma | loader-kernel | meraki-header MR18
  293. KERNEL_INITRAMFS := $$(KERNEL)
  294. IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata
  295. SUPPORTED_DEVICES += mr18
  296. endef
  297. TARGET_DEVICES += meraki_mr18
  298. # fake rootfs is mandatory, pad-offset 129 equals (2 * uimage_header + '\0')
  299. define Device/netgear_ath79_nand
  300. DEVICE_VENDOR := NETGEAR
  301. DEVICE_PACKAGES := kmod-usb2 kmod-usb-ledtrig-usbport
  302. KERNEL_SIZE := 4096k
  303. BLOCKSIZE := 128k
  304. PAGESIZE := 2048
  305. IMAGE_SIZE := 25600k
  306. KERNEL := kernel-bin | append-dtb | lzma | \
  307. pad-offset $$(BLOCKSIZE) 129 | uImage lzma | pad-extra 1 | \
  308. append-uImage-fakehdr filesystem $$(UIMAGE_MAGIC)
  309. IMAGES := sysupgrade.bin factory.img
  310. IMAGE/factory.img := append-kernel | pad-to $$$$(KERNEL_SIZE) | \
  311. append-ubi | check-size | netgear-dni
  312. IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata
  313. UBINIZE_OPTS := -E 5
  314. endef
  315. define Device/netgear_pgzng1
  316. SOC := ar9344
  317. DEVICE_MODEL := PGZNG1
  318. DEVICE_VENDOR := NETGEAR
  319. DEVICE_ALT0_MODEL := Pulse Gateway
  320. DEVICE_ALT0_VENDOR := ADT
  321. DEVICE_PACKAGES := kmod-usb2 kmod-usb-ledtrig-usbport kmod-i2c-gpio \
  322. kmod-leds-pca955x kmod-rtc-isl1208 kmod-spi-dev
  323. KERNEL_SIZE := 5120k
  324. IMAGE_SIZE := 83968k
  325. PAGESIZE := 2048
  326. BLOCKSIZE := 128k
  327. IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata
  328. endef
  329. TARGET_DEVICES += netgear_pgzng1
  330. define Device/netgear_r6100
  331. SOC := ar9344
  332. DEVICE_MODEL := R6100
  333. UIMAGE_MAGIC := 0x36303030
  334. NETGEAR_BOARD_ID := R6100
  335. NETGEAR_HW_ID := 29764434+0+128+128+2x2+2x2
  336. $(Device/netgear_ath79_nand)
  337. DEVICE_PACKAGES += kmod-ath10k-ct ath10k-firmware-qca988x-ct
  338. endef
  339. TARGET_DEVICES += netgear_r6100
  340. define Device/netgear_wndr3700-v4
  341. SOC := ar9344
  342. DEVICE_MODEL := WNDR3700
  343. DEVICE_VARIANT := v4
  344. UIMAGE_MAGIC := 0x33373033
  345. NETGEAR_BOARD_ID := WNDR3700v4
  346. NETGEAR_HW_ID := 29763948+128+128
  347. $(Device/netgear_ath79_nand)
  348. endef
  349. TARGET_DEVICES += netgear_wndr3700-v4
  350. define Device/netgear_wndr4300
  351. SOC := ar9344
  352. DEVICE_MODEL := WNDR4300
  353. UIMAGE_MAGIC := 0x33373033
  354. NETGEAR_BOARD_ID := WNDR4300
  355. NETGEAR_HW_ID := 29763948+0+128+128+2x2+3x3
  356. $(Device/netgear_ath79_nand)
  357. endef
  358. TARGET_DEVICES += netgear_wndr4300
  359. define Device/netgear_wndr4300sw
  360. SOC := ar9344
  361. DEVICE_MODEL := WNDR4300SW
  362. UIMAGE_MAGIC := 0x33373033
  363. NETGEAR_BOARD_ID := WNDR4300SW
  364. NETGEAR_HW_ID := 29763948+0+128+128+2x2+3x3
  365. $(Device/netgear_ath79_nand)
  366. endef
  367. TARGET_DEVICES += netgear_wndr4300sw
  368. define Device/netgear_wndr4300tn
  369. SOC := ar9344
  370. DEVICE_MODEL := WNDR4300TN
  371. UIMAGE_MAGIC := 0x33373033
  372. NETGEAR_BOARD_ID := WNDR4300TN
  373. NETGEAR_HW_ID := 29763948+0+128+128+2x2+3x3
  374. $(Device/netgear_ath79_nand)
  375. endef
  376. TARGET_DEVICES += netgear_wndr4300tn
  377. define Device/netgear_wndr4300-v2
  378. SOC := qca9563
  379. DEVICE_COMPAT_VERSION := 1.1
  380. DEVICE_COMPAT_MESSAGE := Partition table has been changed to fix the \
  381. first reboot issue. Please reflash factory image with nmrp or tftp.
  382. DEVICE_MODEL := WNDR4300
  383. DEVICE_VARIANT := v2
  384. UIMAGE_MAGIC := 0x27051956
  385. NETGEAR_BOARD_ID := WNDR4500series
  386. NETGEAR_HW_ID := 29764821+2+128+128+3x3+3x3+5508012175
  387. $(Device/netgear_ath79_nand)
  388. endef
  389. TARGET_DEVICES += netgear_wndr4300-v2
  390. define Device/netgear_wndr4500-v3
  391. SOC := qca9563
  392. DEVICE_COMPAT_VERSION := 1.1
  393. DEVICE_COMPAT_MESSAGE := Partition table has been changed to fix the \
  394. first reboot issue. Please reflash factory image with nmrp or tftp.
  395. DEVICE_MODEL := WNDR4500
  396. DEVICE_VARIANT := v3
  397. UIMAGE_MAGIC := 0x27051956
  398. NETGEAR_BOARD_ID := WNDR4500series
  399. NETGEAR_HW_ID := 29764821+2+128+128+3x3+3x3+5508012173
  400. $(Device/netgear_ath79_nand)
  401. endef
  402. TARGET_DEVICES += netgear_wndr4500-v3
  403. define Device/zte_mf28x_common
  404. SOC := qca9563
  405. DEVICE_VENDOR := ZTE
  406. DEVICE_PACKAGES := kmod-usb2 kmod-ath10k-ct
  407. BLOCKSIZE := 128k
  408. PAGESIZE := 2048
  409. LOADER_TYPE := bin
  410. LZMA_TEXT_START := 0x82800000
  411. KERNEL := kernel-bin | append-dtb | lzma | loader-kernel | uImage none
  412. KERNEL_INITRAMFS := $$(KERNEL)
  413. KERNEL_SIZE := 4096k
  414. IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata
  415. endef
  416. define Device/zte_mf281
  417. $(Device/zte_mf28x_common)
  418. DEVICE_MODEL := MF281
  419. KERNEL_SIZE := 6144k
  420. IMAGE_SIZE := 29696k
  421. IMAGES += factory.bin
  422. IMAGE/factory.bin := append-kernel | pad-to $$$$(KERNEL_SIZE) | append-ubi | \
  423. check-size
  424. DEVICE_PACKAGES += ath10k-firmware-qca9888-ct kmod-usb-net-rndis \
  425. -ath10k-board-qca9888 ipq-wifi-zte_mf286c \
  426. kmod-usb-acm comgt-ncm
  427. endef
  428. TARGET_DEVICES += zte_mf281
  429. define Device/zte_mf282
  430. $(Device/zte_mf28x_common)
  431. DEVICE_MODEL := MF282
  432. DEVICE_PACKAGES += ath10k-firmware-qca988x-ct kmod-usb-net-qmi-wwan \
  433. kmod-usb-serial-option uqmi
  434. endef
  435. TARGET_DEVICES += zte_mf282
  436. define Device/zte_mf286
  437. $(Device/zte_mf28x_common)
  438. DEVICE_MODEL := MF286
  439. DEVICE_PACKAGES += ath10k-firmware-qca988x-ct ath10k-firmware-qca9888-ct \
  440. -ath10k-board-qca9888 ipq-wifi-zte_mf286ar \
  441. kmod-usb-net-qmi-wwan kmod-usb-serial-option uqmi
  442. endef
  443. TARGET_DEVICES += zte_mf286
  444. define Device/zte_mf286a
  445. $(Device/zte_mf28x_common)
  446. DEVICE_MODEL := MF286A
  447. DEVICE_PACKAGES += ath10k-firmware-qca9888-ct kmod-usb-net-qmi-wwan \
  448. -ath10k-board-qca9888 ipq-wifi-zte_mf286ar \
  449. kmod-usb-serial-option uqmi
  450. endef
  451. TARGET_DEVICES += zte_mf286a
  452. define Device/zte_mf286c
  453. $(Device/zte_mf28x_common)
  454. DEVICE_MODEL := MF286C
  455. DEVICE_PACKAGES += ath10k-firmware-qca9888-ct kmod-usb-net-qmi-wwan \
  456. -ath10k-board-qca9888 ipq-wifi-zte_mf286c \
  457. kmod-usb-serial-option uqmi
  458. endef
  459. TARGET_DEVICES += zte_mf286c
  460. define Device/zte_mf286r
  461. $(Device/zte_mf28x_common)
  462. DEVICE_MODEL := MF286R
  463. DEVICE_PACKAGES += ath10k-firmware-qca9888-ct kmod-usb-net-rndis kmod-usb-acm \
  464. comgt-ncm
  465. endef
  466. TARGET_DEVICES += zte_mf286r
  467. define Device/zyxel_nbg6716
  468. SOC := qca9558
  469. DEVICE_VENDOR := Zyxel
  470. DEVICE_MODEL := NBG6716
  471. DEVICE_PACKAGES := kmod-usb2 kmod-usb-ledtrig-usbport kmod-ath10k-ct \
  472. ath10k-firmware-qca988x-ct
  473. RAS_BOARD := NBG6716
  474. RAS_ROOTFS_SIZE := 29696k
  475. RAS_VERSION := "OpenWrt Linux-$(LINUX_VERSION)"
  476. KERNEL_SIZE := 4096k
  477. BLOCKSIZE := 128k
  478. PAGESIZE := 2048
  479. LOADER_TYPE := bin
  480. KERNEL := kernel-bin | append-dtb | lzma | loader-kernel | uImage none | \
  481. zyxel-buildkerneljffs | check-size 4096k
  482. IMAGES := sysupgrade.tar sysupgrade-4M-Kernel.bin factory.bin
  483. IMAGE/sysupgrade.tar/squashfs := append-rootfs | pad-to $$$$(BLOCKSIZE) | \
  484. sysupgrade-tar rootfs=$$$$@ | append-metadata
  485. IMAGE/sysupgrade-4M-Kernel.bin/squashfs := append-kernel | \
  486. pad-to $$$$(KERNEL_SIZE) | append-ubi | pad-to 263192576 | gzip
  487. IMAGE/factory.bin := append-kernel | pad-to $$$$(KERNEL_SIZE) | append-ubi | \
  488. zyxel-factory
  489. UBINIZE_OPTS := -E 5
  490. endef
  491. TARGET_DEVICES += zyxel_nbg6716
  492. define Device/zyxel_emg2926_q10a
  493. $(Device/zyxel_nbg6716)
  494. DEVICE_MODEL := EMG2926-Q10A
  495. RAS_BOARD := AAVK-EMG2926Q10A
  496. endef
  497. TARGET_DEVICES += zyxel_emg2926_q10a