layerscape: add ARM Trusted Firmware package
[openwrt/staging/ldir.git] / package / boot / tfa-layerscape / Makefile
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
8 include $(TOPDIR)/rules.mk
9
10 PKG_NAME:=tfa-layerscape
11 PKG_VERSION:=lsdk-1903
12 PKG_RELEASE:=1
13
14 PKG_SOURCE_PROTO:=git
15 PKG_SOURCE_URL:=https://source.codeaurora.org/external/qoriq/qoriq-components/atf
16 PKG_SOURCE_VERSION:=7e34aebe658c7c3439d2d68b0ce6b9776e8e6996
17 PKG_MIRROR_HASH:=9cf0bc32fa589a0ee7c48c87898679e645341f29da1253d0ba5d2e82c6ea074d
18 PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(BUILD_VARIANT)/$(PKG_NAME)-$(PKG_VERSION)
19 PKG_BUILD_DEPENDS:=uboot-layerscape
20
21 include $(INCLUDE_DIR)/package.mk
22
23 define Package/tfa-layerscape/Config
24 define Package/tfa-$(1)
25 SECTION:=boot
26 CATEGORY:=Boot Loaders
27 TITLE:=$(2)
28 DEPENDS:=@TARGET_layerscape_armv8_64b +layerscape-rcw-$(1)
29 HIDDEN:=1
30 VARIANT:=$(1)
31 BIN_BL2:=$(3)
32 BIN_FIP:=$(4)
33 endef
34 endef
35
36 define Package/tfa-layerscape/Install
37 define Package/tfa-$(1)/install
38 $(INSTALL_DIR) $(STAGING_DIR_IMAGE)
39 $(CP) $(PKG_BUILD_DIR)/$(BIN_BL2) $(STAGING_DIR_IMAGE)/$(1)-bl2.pbl
40 $(CP) $(PKG_BUILD_DIR)/$(BIN_FIP) $(STAGING_DIR_IMAGE)/$(1)-fip.bin
41 endef
42 endef
43
44 define Build/Compile
45 $(eval $(Package/tfa-layerscape/$(BUILD_VARIANT))) \
46 $(MAKE) -C $(PKG_BUILD_DIR) CROSS_COMPILE=$(TARGET_CROSS) \
47 fip pbl PLAT=$(PLAT) BOOT_MODE=$(BOOT_MODE) \
48 RCW=$(STAGING_DIR_IMAGE)/$(BUILD_VARIANT)-rcw.bin \
49 BL33=$(STAGING_DIR_IMAGE)/$(BUILD_VARIANT)-uboot.bin
50 endef
51
52 define Package/tfa-layerscape/ls1012ardb
53 TITLE:=NXP LS1012ARDB Trusted Firmware
54 PLAT:=ls1012ardb
55 BOOT_MODE:=qspi
56 BIN_BL2:=build/ls1012ardb/release/bl2_qspi.pbl
57 BIN_FIP:=build/ls1012ardb/release/fip.bin
58 endef
59
60 define Package/tfa-layerscape/ls1012afrwy
61 TITLE:=NXP LS1012AFRWY Trusted Firmware
62 PLAT:=ls1012afrwy
63 BOOT_MODE:=qspi
64 BIN_BL2:=build/ls1012afrwy/release/bl2_qspi.pbl
65 BIN_FIP:=build/ls1012afrwy/release/fip.bin
66 endef
67
68 define Package/tfa-layerscape/ls1043ardb
69 TITLE:=NXP LS1043ARDB Trusted Firmware
70 PLAT:=ls1043ardb
71 BOOT_MODE:=nor
72 BIN_BL2:=build/ls1043ardb/release/bl2_nor.pbl
73 BIN_FIP:=build/ls1043ardb/release/fip.bin
74 endef
75
76 define Package/tfa-layerscape/ls1043ardb-sdboot
77 TITLE:=NXP LS1043ARDB SD Boot Trusted Firmware
78 PLAT:=ls1043ardb
79 BOOT_MODE:=sd
80 BIN_BL2:=build/ls1043ardb/release/bl2_sd.pbl
81 BIN_FIP:=build/ls1043ardb/release/fip.bin
82 endef
83
84 define Package/tfa-layerscape/ls1046ardb
85 TITLE:=NXP LS1046ARDB Trusted Firmware
86 PLAT:=ls1046ardb
87 BOOT_MODE:=qspi
88 BIN_BL2:=build/ls1046ardb/release/bl2_qspi.pbl
89 BIN_FIP:=build/ls1046ardb/release/fip.bin
90 endef
91
92 define Package/tfa-layerscape/ls1046ardb-sdboot
93 TITLE:=NXP LS1046ARDB SD Boot Trusted Firmware
94 PLAT:=ls1046ardb
95 BOOT_MODE:=sd
96 BIN_BL2:=build/ls1046ardb/release/bl2_sd.pbl
97 BIN_FIP:=build/ls1046ardb/release/fip.bin
98 endef
99
100 define Package/tfa-layerscape/ls1088ardb
101 TITLE:=NXP LS1088ARDB Trusted Firmware
102 PLAT:=ls1088ardb
103 BOOT_MODE:=qspi
104 BIN_BL2:=build/ls1088ardb/release/bl2_qspi.pbl
105 BIN_FIP:=build/ls1088ardb/release/fip.bin
106 endef
107
108 define Package/tfa-layerscape/ls1088ardb-sdboot
109 TITLE:=NXP LS1088ARDB SD Boot Trusted Firmware
110 PLAT:=ls1088ardb
111 BOOT_MODE:=sd
112 BIN_BL2:=build/ls1088ardb/release/bl2_sd.pbl
113 BIN_FIP:=build/ls1088ardb/release/fip.bin
114 endef
115
116 define Package/tfa-layerscape/ls2088ardb
117 TITLE:=NXP LS2088ARDB Trusted Firmware
118 PLAT:=ls2088ardb
119 BOOT_MODE:=nor
120 BIN_BL2:=build/ls2088ardb/release/bl2_nor.pbl
121 BIN_FIP:=build/ls2088ardb/release/fip.bin
122 endef
123
124 TFAS := \
125 ls1012ardb \
126 ls1012afrwy \
127 ls1043ardb \
128 ls1043ardb-sdboot \
129 ls1046ardb \
130 ls1046ardb-sdboot \
131 ls1088ardb \
132 ls1088ardb-sdboot \
133 ls2088ardb
134
135 $(foreach tfa,$(TFAS), \
136 $(eval $(Package/tfa-layerscape/$(tfa))) \
137 $(eval $(call Package/tfa-layerscape/Config,$(tfa),$(TITLE),$(BIN_BL2),$(BIN_FIP))) \
138 $(eval $(call Package/tfa-layerscape/Install,$(tfa))) \
139 $(eval $(call BuildPackage,tfa-$(tfa))) \
140 )