cortexa9.mk 5.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219
  1. DEVICE_VARS += MKUBIFS_OPTS UBOOT
  2. define Build/boot-overlay
  3. rm -rf [email protected]
  4. mkdir -p [email protected]
  5. $(CP) $@ [email protected]/$(IMG_PREFIX)-uImage
  6. ln -sf $(IMG_PREFIX)-uImage [email protected]/uImage
  7. $(foreach dts,$(DEVICE_DTS), \
  8. $(CP) \
  9. $(DTS_DIR)/$(dts).dtb \
  10. [email protected]/$(IMG_PREFIX)-$(dts).dtb; \
  11. ln -sf \
  12. $(IMG_PREFIX)-$(dts).dtb \
  13. [email protected]/$(dts).dtb; \
  14. )
  15. mkimage -A arm -O linux -T script -C none -a 0 -e 0 \
  16. -n '$(DEVICE_ID) OpenWrt bootscript' \
  17. -d ./bootscript-$(DEVICE_NAME) \
  18. [email protected]/6x_bootscript-$(DEVICE_NAME)
  19. $(STAGING_DIR_HOST)/bin/mkfs.ubifs \
  20. --space-fixup --compr=zlib --squash-uids \
  21. $(MKUBIFS_OPTS) -c 16248 \
  22. -o [email protected] -d [email protected]
  23. $(TAR) -C [email protected] -cf [email protected] .
  24. endef
  25. define Build/bootfs.tar.gz
  26. rm -rf [email protected]
  27. mkdir -p [email protected]
  28. $(TAR) -C [email protected] -xf $(IMAGE_KERNEL).boot.tar
  29. $(TAR) -C [email protected] \
  30. --numeric-owner --owner=0 --group=0 --transform "s,./,./boot/," \
  31. -czvf $@ .
  32. endef
  33. define Build/recovery-scr
  34. mkimage -A arm -O linux -T script -C none -a 0 -e 0 \
  35. -n '$(DEVICE_ID) OpenWrt recovery bootscript' \
  36. -d ./recovery-$(DEVICE_NAME) $@
  37. endef
  38. define Build/imx6-combined-image-prepare
  39. rm -rf [email protected]
  40. mkdir -p [email protected]
  41. endef
  42. define Build/imx6-combined-image-clean
  43. rm -rf [email protected] [email protected]
  44. endef
  45. define Build/imx6-combined-image
  46. $(CP) $(IMAGE_KERNEL) [email protected]/uImage
  47. $(foreach dts,$(DEVICE_DTS), \
  48. $(CP) \
  49. $(DTS_DIR)/$(dts).dtb \
  50. [email protected]/;
  51. )
  52. mkimage -A arm -O linux -T script -C none -a 0 -e 0 \
  53. -n '$(DEVICE_ID) OpenWrt bootscript' \
  54. -d bootscript-$(DEVICE_NAME) \
  55. [email protected]/boot.scr
  56. cp $@ [email protected]
  57. $(SCRIPT_DIR)/gen_image_generic.sh $@ \
  58. $(CONFIG_TARGET_KERNEL_PARTSIZE) \
  59. [email protected] \
  60. $(CONFIG_TARGET_ROOTFS_PARTSIZE) \
  61. [email protected] \
  62. 1024
  63. endef
  64. define Build/imx6-sdcard
  65. $(Build/imx6-combined-image-prepare)
  66. if [ -f $(STAGING_DIR_IMAGE)/$(UBOOT)-u-boot.img ]; then \
  67. $(CP) $(STAGING_DIR_IMAGE)/$(UBOOT)-u-boot.img \
  68. [email protected]/u-boot.img; \
  69. fi
  70. if [ -f $(STAGING_DIR_IMAGE)/$(UBOOT)-u-boot-dtb.img ]; then \
  71. $(CP) $(STAGING_DIR_IMAGE)/$(UBOOT)-u-boot-dtb.img \
  72. [email protected]/u-boot-dtb.img; \
  73. fi
  74. $(Build/imx6-combined-image)
  75. dd if=$(STAGING_DIR_IMAGE)/$(UBOOT)-SPL of=$@ bs=1024 seek=1 conv=notrunc
  76. $(Build/imx6-combined-image-clean)
  77. endef
  78. define Build/apalis-emmc
  79. $(Build/imx6-combined-image-prepare)
  80. $(Build/imx6-combined-image)
  81. $(Build/imx6-combined-image-clean)
  82. endef
  83. define Device/Default
  84. PROFILES := Default
  85. FILESYSTEMS := squashfs ext4
  86. KERNEL_INSTALL := 1
  87. KERNEL_SUFFIX := -uImage
  88. KERNEL_NAME := zImage
  89. KERNEL := kernel-bin | uImage none
  90. KERNEL_LOADADDR := 0x10008000
  91. IMAGES :=
  92. endef
  93. define Device/gateworks_ventana
  94. DEVICE_VENDOR := Gateworks
  95. DEVICE_MODEL := Ventana family
  96. DEVICE_VARIANT := normal NAND flash
  97. DEVICE_NAME := ventana
  98. DEVICE_DTS:= \
  99. imx6dl-gw51xx \
  100. imx6dl-gw52xx \
  101. imx6dl-gw53xx \
  102. imx6dl-gw54xx \
  103. imx6dl-gw551x \
  104. imx6dl-gw552x \
  105. imx6dl-gw553x \
  106. imx6dl-gw5904 \
  107. imx6dl-gw5907 \
  108. imx6dl-gw5910 \
  109. imx6dl-gw5912 \
  110. imx6dl-gw5913 \
  111. imx6q-gw51xx \
  112. imx6q-gw52xx \
  113. imx6q-gw53xx \
  114. imx6q-gw54xx \
  115. imx6q-gw5400-a \
  116. imx6q-gw551x \
  117. imx6q-gw552x \
  118. imx6q-gw553x \
  119. imx6q-gw5904 \
  120. imx6q-gw5907 \
  121. imx6q-gw5910 \
  122. imx6q-gw5912 \
  123. imx6q-gw5913
  124. DEVICE_PACKAGES := kmod-sky2 kmod-sound-core kmod-sound-soc-imx \
  125. kmod-sound-soc-imx-sgtl5000 kmod-can kmod-can-flexcan kmod-can-raw \
  126. kmod-hwmon-gsc kmod-leds-gpio kmod-pps-gpio kobs-ng
  127. KERNEL += | boot-overlay
  128. IMAGES := nand.ubi bootfs.tar.gz dtb
  129. IMAGE/nand.ubi := append-ubi
  130. IMAGE/bootfs.tar.gz := bootfs.tar.gz
  131. IMAGE/dtb := install-dtb
  132. UBINIZE_PARTS = boot=$$(KDIR_KERNEL_IMAGE).boot.ubifs=15
  133. PAGESIZE := 2048
  134. BLOCKSIZE := 128k
  135. MKUBIFS_OPTS := -m $$(PAGESIZE) -e 124KiB
  136. endef
  137. TARGET_DEVICES += gateworks_ventana
  138. define Device/gateworks_ventana-large
  139. $(Device/gateworks_ventana)
  140. DEVICE_VARIANT := large NAND flash
  141. IMAGES := nand.ubi
  142. PAGESIZE := 4096
  143. BLOCKSIZE := 256k
  144. MKUBIFS_OPTS := -m $$(PAGESIZE) -e 248KiB
  145. endef
  146. TARGET_DEVICES += gateworks_ventana-large
  147. define Device/solidrun_cubox-i
  148. DEVICE_VENDOR := SolidRun
  149. DEVICE_MODEL := CuBox-i
  150. DEVICE_DTS := \
  151. imx6q-cubox-i \
  152. imx6dl-cubox-i \
  153. imx6q-hummingboard \
  154. imx6dl-hummingboard
  155. DEVICE_PACKAGES := kmod-drm-imx kmod-drm-imx-hdmi kmod-usb-hid
  156. UBOOT := mx6cuboxi
  157. KERNEL := kernel-bin
  158. KERNEL_SUFFIX := -zImage
  159. FILESYSTEMS := squashfs
  160. IMAGES := combined.bin dtb
  161. IMAGE/combined.bin := append-rootfs | pad-extra 128k | imx6-sdcard
  162. IMAGE/dtb := install-dtb
  163. endef
  164. TARGET_DEVICES += solidrun_cubox-i
  165. define Device/toradex_apalis
  166. DEVICE_VENDOR := Toradex
  167. DEVICE_MODEL := Apalis family
  168. SUPPORTED_DEVICES := apalis,ixora apalis,eval
  169. DEVICE_DTS := \
  170. imx6q-apalis-eval \
  171. imx6q-apalis-ixora \
  172. imx6q-apalis-ixora-v1.1
  173. DEVICE_PACKAGES := \
  174. kmod-can kmod-can-flexcan kmod-can-raw \
  175. kmod-leds-gpio kmod-gpio-button-hotplug \
  176. kmod-pps-gpio kmod-rtc-ds1307
  177. FILESYSTEMS := squashfs
  178. IMAGES := combined.bin sysupgrade.bin
  179. DEVICE_IMG_NAME = $$(DEVICE_IMG_PREFIX)-$$(1).$$(2)
  180. IMAGE/combined.bin := append-rootfs | pad-extra 128k | apalis-emmc
  181. IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata
  182. ARTIFACTS := recovery.scr
  183. ARTIFACT/recovery.scr := recovery-scr
  184. endef
  185. TARGET_DEVICES += toradex_apalis
  186. define Device/wandboard_dual
  187. DEVICE_VENDOR := Wandboard
  188. DEVICE_MODEL := Dual
  189. DEVICE_DTS := imx6dl-wandboard
  190. endef
  191. TARGET_DEVICES += wandboard_dual