Makefile 4.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142
  1. #
  2. # Copyright (C) 2016 Jiang Yutang <[email protected]>
  3. #
  4. # This is free software, licensed under the GNU General Public License v2.
  5. # See /LICENSE for more information.
  6. #
  7. include $(TOPDIR)/rules.mk
  8. include $(INCLUDE_DIR)/image.mk
  9. define Build/append-ls-rcw
  10. rm -f $@
  11. dd if=$(STAGING_DIR_IMAGE)/$(1)-rcw.bin >> $@
  12. endef
  13. define Build/append-ls-uboot
  14. dd if=$(STAGING_DIR_IMAGE)/$(1)-$(SUBTARGET)-uboot.bin >> $@
  15. endef
  16. define Build/append-ls-fman
  17. dd if=$(STAGING_DIR_IMAGE)/$(1)-fman.bin >> $@
  18. endef
  19. define Build/append-ls-mc
  20. dd if=$(STAGING_DIR_IMAGE)/$(1)-mc.itb >> $@
  21. endef
  22. define Build/append-ls-ppfe
  23. dd if=$(STAGING_DIR_IMAGE)/pfe.itb >> $@
  24. endef
  25. define Build/append-ls-dpl
  26. dd if=$(STAGING_DIR_IMAGE)/$(1)-dpl.dtb >> $@
  27. endef
  28. define Build/append-ls-dpc
  29. dd if=$(STAGING_DIR_IMAGE)/$(1)-dpc.dtb >> $@
  30. endef
  31. define Build/append-ls-dtb
  32. $(call Image/BuildDTB,$(DTS_DIR)/$(1).dts,$(DTS_DIR)/$(1).dtb)
  33. dd if=$(DTS_DIR)/$(1).dtb >> $@
  34. endef
  35. define Build/append-ls-rootfs-ext4
  36. $(STAGING_DIR_HOST)/bin/make_ext4fs -l $(word 2,$(1)) -b 4096 -i 6000 -m 0 -J $(KDIR)/$(word 1,$(1))-$(word 2,$(1)).root.ext4 $(TARGET_DIR)
  37. dd if=$(KDIR)/$(word 1,$(1))-$(word 2,$(1)).root.ext4 >> $@
  38. endef
  39. define Device/Default
  40. PROFILES = Default
  41. FILESYSTEMS := squashfs
  42. DEVICE_DTS :=
  43. IMAGES = firmware.bin
  44. ifeq ($(SUBTARGET),armv8_64b)
  45. KERNEL := kernel-bin | gzip | uImage gzip
  46. KERNEL_LOADADDR = 0x80080000
  47. KERNEL_ENTRY_POINT = 0x80080000
  48. endif
  49. ifeq ($(SUBTARGET),armv8_32b)
  50. KERNEL := kernel-bin | uImage none
  51. KERNEL_NAME := zImage
  52. KERNEL_LOADADDR = 0x80008000
  53. KERNEL_ENTRY_POINT = 0x80008000
  54. endif
  55. endef
  56. define Device/ls1043ardb
  57. DEVICE_TITLE := ls1043ardb-$(SUBTARGET)
  58. DEVICE_PACKAGES += rcw-layerscape-ls1043ardb uboot-layerscape-$(SUBTARGET)-ls1043ardb fman-layerscape-ls1043ardb
  59. DEVICE_DTS = ../../../arm64/boot/dts/freescale/fsl-ls1043a-rdb-sdk
  60. IMAGE/firmware.bin = append-ls-rcw $(1) | pad-to 1M | \
  61. append-ls-uboot $(1) | pad-to 9M | \
  62. append-ls-fman $(1) | pad-to 15M | \
  63. append-ls-dtb $$(DEVICE_DTS) | pad-to 16M | \
  64. append-kernel | pad-to 32M | \
  65. append-rootfs | pad-rootfs | check-size 67108865
  66. endef
  67. TARGET_DEVICES += ls1043ardb
  68. define Device/ls1046ardb
  69. DEVICE_TITLE := ls1046ardb-$(SUBTARGET)
  70. DEVICE_PACKAGES += rcw-layerscape-ls1046ardb uboot-layerscape-$(SUBTARGET)-ls1046ardb fman-layerscape-ls1046ardb
  71. DEVICE_DTS = ../../../arm64/boot/dts/freescale/fsl-ls1046a-rdb-sdk
  72. IMAGE/firmware.bin = append-ls-rcw $(1) | pad-to 1M | \
  73. append-ls-uboot $(1) | pad-to 9M | \
  74. append-ls-fman $(1) | pad-to 15M | \
  75. append-ls-dtb $$(DEVICE_DTS) | pad-to 16M | \
  76. append-kernel | pad-to 32M | \
  77. append-ls-rootfs-ext4 $(1) 22M | check-size 67108865
  78. endef
  79. TARGET_DEVICES += ls1046ardb
  80. define Device/ls1012ardb
  81. DEVICE_TITLE := ls1012ardb-$(SUBTARGET)
  82. DEVICE_PACKAGES += rcw-layerscape-ls1012ardb uboot-layerscape-$(SUBTARGET)-ls1012ardb \
  83. kmod-ppfe layerscape-ppfe
  84. DEVICE_DTS = ../../../arm64/boot/dts/freescale/fsl-ls1012a-rdb
  85. IMAGE/firmware.bin = append-ls-rcw $(1) | pad-to 1M | \
  86. append-ls-uboot $(1) | pad-to 10M | \
  87. append-ls-ppfe | pad-to 15M | \
  88. append-ls-dtb $$(DEVICE_DTS) | pad-to 16M | \
  89. append-kernel | pad-to 32M | \
  90. append-ls-rootfs-ext4 $(1) 23M | check-size 67108865
  91. endef
  92. TARGET_DEVICES += ls1012ardb
  93. ifeq ($(SUBTARGET),armv8_64b)
  94. define Device/ls1088ardb
  95. DEVICE_TITLE := ls1088ardb-$(SUBTARGET)
  96. DEVICE_PACKAGES += rcw-layerscape-ls1088ardb uboot-layerscape-$(SUBTARGET)-ls1088ardb \
  97. layerscape-mc-ls1088ardb layerscape-dpl-ls1088ardb restool
  98. DEVICE_DTS = ../../../arm64/boot/dts/freescale/fsl-ls1088a-rdb
  99. IMAGE/firmware.bin = append-ls-rcw $(1) | pad-to 1M | \
  100. append-ls-uboot $(1) | pad-to 10M | \
  101. append-ls-mc $(1) | pad-to 13M | \
  102. append-ls-dpl $(1) | pad-to 14M | \
  103. append-ls-dpc $(1) | pad-to 15M | \
  104. append-ls-dtb $$(DEVICE_DTS) | pad-to 16M | \
  105. append-kernel | pad-to 32M | \
  106. append-ls-rootfs-ext4 $(1) 17M | check-size 67108865
  107. endef
  108. TARGET_DEVICES += ls1088ardb
  109. define Device/ls2088ardb
  110. DEVICE_TITLE := ls2088ardb-$(SUBTARGET)
  111. DEVICE_PACKAGES += rcw-layerscape-ls2088ardb uboot-layerscape-$(SUBTARGET)-ls2088ardb \
  112. layerscape-mc-ls2088ardb layerscape-dpl-ls2088ardb restool
  113. DEVICE_DTS = ../../../arm64/boot/dts/freescale/fsl-ls2088a-rdb
  114. IMAGE/firmware.bin = append-ls-rcw $(1) | pad-to 1M | \
  115. append-ls-uboot $(1) | pad-to 10M | \
  116. append-ls-mc $(1) | pad-to 13M | \
  117. append-ls-dpl $(1) | pad-to 14M | \
  118. append-ls-dpc $(1) | pad-to 15M | \
  119. append-ls-dtb $$(DEVICE_DTS) | pad-to 16M | \
  120. append-kernel | pad-to 32M | \
  121. append-rootfs | pad-rootfs | check-size 67108865
  122. endef
  123. TARGET_DEVICES += ls2088ardb
  124. endif
  125. $(eval $(call BuildImage))