nand.mk 7.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260
  1. # attention: only zlib compression is allowed for the boot fs
  2. define Build/zyxel-buildkerneljffs
  3. rm -rf $(KDIR_TMP)/zyxelnbg6716
  4. mkdir -p $(KDIR_TMP)/zyxelnbg6716/image/boot
  5. cp $@ $(KDIR_TMP)/zyxelnbg6716/image/boot/vmlinux.lzma.uImage
  6. $(STAGING_DIR_HOST)/bin/mkfs.jffs2 \
  7. --big-endian --squash-uids -v -e 128KiB -q -f -n -x lzma -x rtime \
  8. -o $@ \
  9. -d $(KDIR_TMP)/zyxelnbg6716/image
  10. rm -rf $(KDIR_TMP)/zyxelnbg6716
  11. endef
  12. define Build/zyxel-factory
  13. let \
  14. maxsize="$(subst k,* 1024,$(RAS_ROOTFS_SIZE))"; \
  15. let size="$$(stat -c%s $@)"; \
  16. if [ $$size -lt $$maxsize ]; then \
  17. $(STAGING_DIR_HOST)/bin/mkrasimage \
  18. -b $(RAS_BOARD) \
  19. -v $(RAS_VERSION) \
  20. -r $@ \
  21. -s $$maxsize \
  22. -o [email protected] \
  23. -l 131072 \
  24. && mv [email protected] $@ ; \
  25. fi
  26. endef
  27. define Device/8dev_rambutan
  28. SOC := qca9557
  29. DEVICE_VENDOR := 8devices
  30. DEVICE_MODEL := Rambutan
  31. DEVICE_PACKAGES := kmod-usb2
  32. BLOCKSIZE := 128k
  33. PAGESIZE := 2048
  34. KERNEL_SIZE := 4096k
  35. KERNEL_IN_UBI := 1
  36. IMAGES := factory.bin sysupgrade.tar
  37. IMAGE/sysupgrade.tar := sysupgrade-tar | append-metadata
  38. IMAGE/factory.bin := append-ubi
  39. endef
  40. TARGET_DEVICES += 8dev_rambutan
  41. define Device/aerohive_hiveap-121
  42. SOC := ar9344
  43. DEVICE_VENDOR := Aerohive
  44. DEVICE_MODEL := HiveAP 121
  45. DEVICE_PACKAGES := kmod-usb2
  46. BLOCKSIZE := 128k
  47. PAGESIZE := 2048
  48. IMAGE_SIZE := 116m
  49. KERNEL_SIZE := 5120k
  50. UBINIZE_OPTS := -E 5
  51. SUPPORTED_DEVICES += hiveap-121
  52. IMAGES += factory.bin
  53. IMAGE/factory.bin := append-kernel | pad-to $$$$(KERNEL_SIZE) | append-ubi | \
  54. check-size
  55. IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata
  56. endef
  57. TARGET_DEVICES += aerohive_hiveap-121
  58. define Device/domywifi_dw33d
  59. SOC := qca9558
  60. DEVICE_VENDOR := DomyWifi
  61. DEVICE_MODEL := DW33D
  62. DEVICE_PACKAGES := kmod-usb2 kmod-usb-storage kmod-usb-ledtrig-usbport \
  63. kmod-ath10k-ct ath10k-firmware-qca988x-ct
  64. KERNEL_SIZE := 5120k
  65. IMAGE_SIZE := 98304k
  66. BLOCKSIZE := 128k
  67. PAGESIZE := 2048
  68. UBINIZE_OPTS := -E 5
  69. IMAGES += factory.bin
  70. IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata
  71. IMAGE/factory.bin := append-kernel | pad-to $$$$(KERNEL_SIZE) | append-ubi | \
  72. check-size
  73. endef
  74. TARGET_DEVICES += domywifi_dw33d
  75. define Device/glinet_gl-ar300m-common-nand
  76. SOC := qca9531
  77. DEVICE_VENDOR := GL.iNet
  78. DEVICE_MODEL := GL-AR300M
  79. DEVICE_PACKAGES := kmod-usb2
  80. KERNEL_SIZE := 4096k
  81. IMAGE_SIZE := 16000k
  82. PAGESIZE := 2048
  83. VID_HDR_OFFSET := 2048
  84. endef
  85. define Device/glinet_gl-ar300m-nand
  86. $(Device/glinet_gl-ar300m-common-nand)
  87. DEVICE_VARIANT := NAND
  88. BLOCKSIZE := 128k
  89. IMAGES += factory.img
  90. IMAGE/factory.img := append-kernel | pad-to $$$$(KERNEL_SIZE) | append-ubi
  91. IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata
  92. SUPPORTED_DEVICES += glinet,gl-ar300m-nor
  93. endef
  94. TARGET_DEVICES += glinet_gl-ar300m-nand
  95. define Device/glinet_gl-ar300m-nor
  96. $(Device/glinet_gl-ar300m-common-nand)
  97. DEVICE_VARIANT := NOR
  98. BLOCKSIZE := 64k
  99. SUPPORTED_DEVICES += glinet,gl-ar300m-nand gl-ar300m
  100. endef
  101. TARGET_DEVICES += glinet_gl-ar300m-nor
  102. define Device/glinet_gl-ar750s-common
  103. SOC := qca9563
  104. DEVICE_VENDOR := GL.iNet
  105. DEVICE_MODEL := GL-AR750S
  106. DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca9887-ct kmod-usb2 \
  107. kmod-usb-storage block-mount
  108. IMAGE_SIZE := 16000k
  109. endef
  110. define Device/glinet_gl-ar750s-nor-nand
  111. $(Device/glinet_gl-ar750s-common)
  112. DEVICE_VARIANT := NOR/NAND
  113. KERNEL_SIZE := 4096k
  114. IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata
  115. SUPPORTED_DEVICES += glinet,gl-ar750s-nor
  116. endef
  117. TARGET_DEVICES += glinet_gl-ar750s-nor-nand
  118. define Device/glinet_gl-ar750s-nor
  119. $(Device/glinet_gl-ar750s-common)
  120. DEVICE_VARIANT := NOR
  121. BLOCKSIZE := 64k
  122. SUPPORTED_DEVICES += gl-ar750s glinet,gl-ar750s glinet,gl-ar750s-nor-nand
  123. endef
  124. TARGET_DEVICES += glinet_gl-ar750s-nor
  125. define Device/glinet_gl-e750
  126. SOC := qca9531
  127. DEVICE_VENDOR := GL.iNet
  128. DEVICE_MODEL := GL-E750
  129. DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca9887-ct kmod-usb2
  130. SUPPORTED_DEVICES += gl-e750
  131. KERNEL_SIZE := 4096k
  132. IMAGE_SIZE := 131072k
  133. PAGESIZE := 2048
  134. VID_HDR_OFFSET := 2048
  135. BLOCKSIZE := 128k
  136. IMAGES += factory.img
  137. IMAGE/factory.img := append-kernel | pad-to $$$$(KERNEL_SIZE) | append-ubi
  138. IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata
  139. endef
  140. TARGET_DEVICES += glinet_gl-e750
  141. # fake rootfs is mandatory, pad-offset 129 equals (2 * uimage_header + 0xff)
  142. define Device/netgear_ath79_nand
  143. DEVICE_VENDOR := NETGEAR
  144. DEVICE_PACKAGES := kmod-usb2 kmod-usb-ledtrig-usbport
  145. KERNEL_SIZE := 4096k
  146. BLOCKSIZE := 128k
  147. PAGESIZE := 2048
  148. IMAGE_SIZE := 25600k
  149. KERNEL := kernel-bin | append-dtb | lzma -d20 | \
  150. pad-offset $$(KERNEL_SIZE) 129 | uImage lzma | \
  151. append-string -e '\xff' | \
  152. append-uImage-fakehdr filesystem $$(UIMAGE_MAGIC)
  153. KERNEL_INITRAMFS := kernel-bin | append-dtb | lzma -d20 | uImage lzma
  154. IMAGES := sysupgrade.bin factory.img
  155. IMAGE/factory.img := append-kernel | append-ubi | netgear-dni | \
  156. check-size
  157. IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata | \
  158. check-size
  159. UBINIZE_OPTS := -E 5
  160. endef
  161. define Device/netgear_wndr3700-v4
  162. SOC := ar9344
  163. DEVICE_MODEL := WNDR3700
  164. DEVICE_VARIANT := v4
  165. UIMAGE_MAGIC := 0x33373033
  166. NETGEAR_BOARD_ID := WNDR3700v4
  167. NETGEAR_HW_ID := 29763948+128+128
  168. $(Device/netgear_ath79_nand)
  169. endef
  170. TARGET_DEVICES += netgear_wndr3700-v4
  171. define Device/netgear_wndr4300
  172. SOC := ar9344
  173. DEVICE_MODEL := WNDR4300
  174. UIMAGE_MAGIC := 0x33373033
  175. NETGEAR_BOARD_ID := WNDR4300
  176. NETGEAR_HW_ID := 29763948+0+128+128+2x2+3x3
  177. $(Device/netgear_ath79_nand)
  178. endef
  179. TARGET_DEVICES += netgear_wndr4300
  180. define Device/netgear_wndr4300sw
  181. SOC := ar9344
  182. DEVICE_MODEL := WNDR4300SW
  183. UIMAGE_MAGIC := 0x33373033
  184. NETGEAR_BOARD_ID := WNDR4300SW
  185. NETGEAR_HW_ID := 29763948+0+128+128+2x2+3x3
  186. $(Device/netgear_ath79_nand)
  187. endef
  188. TARGET_DEVICES += netgear_wndr4300sw
  189. define Device/netgear_wndr4300tn
  190. SOC := ar9344
  191. DEVICE_MODEL := WNDR4300TN
  192. UIMAGE_MAGIC := 0x33373033
  193. NETGEAR_BOARD_ID := WNDR4300TN
  194. NETGEAR_HW_ID := 29763948+0+128+128+2x2+3x3
  195. $(Device/netgear_ath79_nand)
  196. endef
  197. TARGET_DEVICES += netgear_wndr4300tn
  198. define Device/netgear_wndr4300-v2
  199. SOC := qca9563
  200. DEVICE_MODEL := WNDR4300
  201. DEVICE_VARIANT := v2
  202. UIMAGE_MAGIC := 0x27051956
  203. NETGEAR_BOARD_ID := WNDR4500series
  204. NETGEAR_HW_ID := 29764821+2+128+128+3x3+3x3+5508012175
  205. $(Device/netgear_ath79_nand)
  206. endef
  207. TARGET_DEVICES += netgear_wndr4300-v2
  208. define Device/netgear_wndr4500-v3
  209. SOC := qca9563
  210. DEVICE_MODEL := WNDR4500
  211. DEVICE_VARIANT := v3
  212. UIMAGE_MAGIC := 0x27051956
  213. NETGEAR_BOARD_ID := WNDR4500series
  214. NETGEAR_HW_ID := 29764821+2+128+128+3x3+3x3+5508012173
  215. $(Device/netgear_ath79_nand)
  216. endef
  217. TARGET_DEVICES += netgear_wndr4500-v3
  218. define Device/zyxel_nbg6716
  219. SOC := qca9558
  220. DEVICE_VENDOR := ZyXEL
  221. DEVICE_MODEL := NBG6716
  222. DEVICE_PACKAGES := kmod-usb2 kmod-usb-ledtrig-usbport kmod-ath10k-ct \
  223. ath10k-firmware-qca988x-ct
  224. RAS_BOARD := NBG6716
  225. RAS_ROOTFS_SIZE := 29696k
  226. RAS_VERSION := "OpenWrt Linux-$(LINUX_VERSION)"
  227. KERNEL_SIZE := 4096k
  228. BLOCKSIZE := 128k
  229. PAGESIZE := 2048
  230. KERNEL := kernel-bin | append-dtb | uImage none | zyxel-buildkerneljffs | \
  231. check-size 4096k
  232. IMAGES := sysupgrade.tar sysupgrade-4M-Kernel.bin factory.bin
  233. IMAGE/sysupgrade.tar/squashfs := append-rootfs | pad-to $$$$(BLOCKSIZE) | \
  234. sysupgrade-tar rootfs=$$$$@ | append-metadata
  235. IMAGE/sysupgrade-4M-Kernel.bin/squashfs := append-kernel | \
  236. pad-to $$$$(KERNEL_SIZE) | append-ubi | pad-to 263192576 | gzip
  237. IMAGE/factory.bin := append-kernel | pad-to $$$$(KERNEL_SIZE) | append-ubi | \
  238. zyxel-factory
  239. UBINIZE_OPTS := -E 5
  240. endef
  241. TARGET_DEVICES += zyxel_nbg6716