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