Makefile 4.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184
  1. #
  2. # Copyright 2019 NXP
  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. PKG_NAME:=tfa-layerscape
  9. PKG_VERSION:=6.6.23.2.0.0
  10. PKG_RELEASE:=2
  11. PKG_SOURCE_PROTO:=git
  12. PKG_SOURCE_URL:=https://github.com/nxp-qoriq/atf
  13. PKG_SOURCE_VERSION:=lf-6.6.23-2.0.0
  14. PKG_MIRROR_HASH:=628a95ba60a593ae0575ee9ede1154445ec3a86a07b18e4947e06e13c2b67859
  15. PKG_BUILD_DEPENDS:=tfa-layerscape/host
  16. include $(INCLUDE_DIR)/host-build.mk
  17. include $(INCLUDE_DIR)/trusted-firmware-a.mk
  18. include $(INCLUDE_DIR)/package.mk
  19. HOST_CFLAGS += -Wall -Werror -pedantic -std=c99
  20. define Host/Compile
  21. $(MAKE) -C \
  22. $(HOST_BUILD_DIR)/tools/fiptool \
  23. PLAT_FIPTOOL_HELPER_MK="$(HOST_BUILD_DIR)/tools/fiptool/plat_fiptool/nxp/plat_fiptool.mk" \
  24. CFLAGS="$(HOST_CFLAGS)" \
  25. LDFLAGS="$(HOST_LDFLAGS)" \
  26. HOSTCCFLAGS="$(HOST_CFLAGS)"
  27. $(MAKE) -C \
  28. $(HOST_BUILD_DIR)/tools/nxp/create_pbl \
  29. CFLAGS="$(HOST_CFLAGS)"
  30. endef
  31. define Host/Install
  32. $(INSTALL_BIN) $(HOST_BUILD_DIR)/tools/fiptool/fiptool $(STAGING_DIR_HOST)/bin/fiptool-layerscape
  33. $(INSTALL_BIN) $(HOST_BUILD_DIR)/tools/nxp/create_pbl/create_pbl $(STAGING_DIR_HOST)/bin/tfa-create-pbl
  34. $(INSTALL_BIN) $(HOST_BUILD_DIR)/tools/nxp/create_pbl/byte_swap $(STAGING_DIR_HOST)/bin/tfa-byte-swap
  35. endef
  36. define Trusted-Firmware-A/Default
  37. BUILD_TARGET:=layerscape
  38. BUILD_SUBTARGET:=armv8_64b
  39. DEPENDS:=+layerscape-rcw +u-boot-fsl_$(1)
  40. endef
  41. define Trusted-Firmware-A/ls1012a-frdm
  42. NAME:=NXP LS1012AFRDM
  43. PLAT:=ls1012afrdm
  44. BOOT_MODE:=qspi
  45. endef
  46. define Trusted-Firmware-A/ls1012a-rdb
  47. NAME:=NXP LS1012ARDB
  48. PLAT:=ls1012ardb
  49. BOOT_MODE:=qspi
  50. endef
  51. define Trusted-Firmware-A/ls1012a-frwy-sdboot
  52. NAME:=NXP LS1012AFRWY
  53. PLAT:=ls1012afrwy
  54. BOOT_MODE:=qspi
  55. endef
  56. define Trusted-Firmware-A/ls1028a-rdb
  57. TITLE:=NXP LS1028ARDB
  58. PLAT:=ls1028ardb
  59. BOOT_MODE:=flexspi_nor
  60. endef
  61. define Trusted-Firmware-A/ls1028a-rdb-sdboot
  62. TITLE:=NXP LS1028ARDB SD Boot
  63. PLAT:=ls1028ardb
  64. BOOT_MODE:=sd
  65. endef
  66. define Trusted-Firmware-A/ls1043a-rdb
  67. NAME:=NXP LS1043ARDB
  68. PLAT:=ls1043ardb
  69. BOOT_MODE:=nor
  70. endef
  71. define Trusted-Firmware-A/ls1043a-rdb-sdboot
  72. NAME:=NXP LS1043ARDB SD Boot
  73. PLAT:=ls1043ardb
  74. BOOT_MODE:=sd
  75. endef
  76. define Trusted-Firmware-A/ls1046a-frwy
  77. NAME:=NXP LS1046AFRWY
  78. PLAT:=ls1046afrwy
  79. BOOT_MODE:=qspi
  80. endef
  81. define Trusted-Firmware-A/ls1046a-frwy-sdboot
  82. NAME:=NXP LS1046AFRWY SD Boot
  83. PLAT:=ls1046afrwy
  84. BOOT_MODE:=sd
  85. endef
  86. define Trusted-Firmware-A/ls1046a-rdb
  87. NAME:=NXP LS1046ARDB
  88. PLAT:=ls1046ardb
  89. BOOT_MODE:=qspi
  90. endef
  91. define Trusted-Firmware-A/ls1046a-rdb-sdboot
  92. NAME:=NXP LS1046ARDB SD Boot
  93. PLAT:=ls1046ardb
  94. BOOT_MODE:=sd
  95. endef
  96. define Trusted-Firmware-A/ls1088a-rdb
  97. NAME:=NXP LS1088ARDB
  98. PLAT:=ls1088ardb
  99. BOOT_MODE:=qspi
  100. endef
  101. define Trusted-Firmware-A/ls1088a-rdb-sdboot
  102. NAME:=NXP LS1088ARDB SD Boot
  103. PLAT:=ls1088ardb
  104. BOOT_MODE:=sd
  105. endef
  106. define Trusted-Firmware-A/ls2088a-rdb
  107. NAME:=NXP LS2088ARDB
  108. PLAT:=ls2088ardb
  109. BOOT_MODE:=nor
  110. endef
  111. define Trusted-Firmware-A/lx2160a-rdb
  112. NAME:=NXP LX2160ARDB
  113. PLAT:=lx2160ardb
  114. BOOT_MODE:=flexspi_nor
  115. endef
  116. define Trusted-Firmware-A/lx2160a-rdb-sdboot
  117. NAME:=NXP LX2160ARDB SD Boot
  118. PLAT:=lx2160ardb
  119. BOOT_MODE:=sd
  120. endef
  121. TFA_TARGETS := \
  122. ls1012a-frdm \
  123. ls1012a-rdb \
  124. ls1012a-frwy-sdboot \
  125. ls1028a-rdb \
  126. ls1028a-rdb-sdboot \
  127. ls1043a-rdb \
  128. ls1043a-rdb-sdboot \
  129. ls1046a-frwy \
  130. ls1046a-frwy-sdboot \
  131. ls1046a-rdb \
  132. ls1046a-rdb-sdboot \
  133. ls1088a-rdb \
  134. ls1088a-rdb-sdboot \
  135. ls2088a-rdb \
  136. lx2160a-rdb \
  137. lx2160a-rdb-sdboot
  138. TFA_MAKE_FLAGS += \
  139. fip pbl \
  140. BOOT_MODE=$(BOOT_MODE) \
  141. RCW=$(STAGING_DIR_IMAGE)/fsl_$(BUILD_VARIANT)-rcw.bin \
  142. BL33=$(STAGING_DIR_IMAGE)/fsl_$(BUILD_VARIANT)-uboot.bin \
  143. FIPTOOL=$(STAGING_DIR_HOST)/bin/fiptool-layerscape \
  144. CREATE_PBL=$(STAGING_DIR_HOST)/bin/tfa-create-pbl \
  145. BYTE_SWAP=$(STAGING_DIR_HOST)/bin/tfa-byte-swap
  146. define Build/InstallDev
  147. $(INSTALL_DIR) $(STAGING_DIR_IMAGE)
  148. $(CP) $(PKG_BUILD_DIR)/build/$(PLAT)/release/bl2_$(BOOT_MODE).pbl \
  149. $(STAGING_DIR_IMAGE)/fsl_$(BUILD_VARIANT)-bl2.pbl
  150. $(CP) $(PKG_BUILD_DIR)/build/$(PLAT)/release/fip.bin \
  151. $(STAGING_DIR_IMAGE)/fsl_$(BUILD_VARIANT)-fip.bin
  152. endef
  153. define Package/trusted-firmware-a/install/default
  154. endef
  155. $(eval $(call HostBuild))
  156. $(eval $(call BuildPackage/Trusted-Firmware-A))