diff options
author | Ting Liu <ting.liu@nxp.com> | 2020-12-16 19:27:38 +0530 |
---|---|---|
committer | Otavio Salvador <otavio@ossystems.com.br> | 2020-12-16 13:13:18 -0300 |
commit | 7ce1aadc64d39a467527d905a274e1dad388512d (patch) | |
tree | 486c4f065b930658004499ab1d9bb87e6335a648 /recipes-bsp/atf/qoriq-atf_1.5.bb | |
parent | eaf9de847d80daa0fa6cc4fb3aa608ccc3a5e539 (diff) | |
download | meta-freescale-7ce1aadc64d39a467527d905a274e1dad388512d.tar.gz |
atf: rename to qoriq-atf
Signed-off-by: Ting Liu <ting.liu@nxp.com>
Diffstat (limited to 'recipes-bsp/atf/qoriq-atf_1.5.bb')
-rw-r--r-- | recipes-bsp/atf/qoriq-atf_1.5.bb | 249 |
1 files changed, 249 insertions, 0 deletions
diff --git a/recipes-bsp/atf/qoriq-atf_1.5.bb b/recipes-bsp/atf/qoriq-atf_1.5.bb new file mode 100644 index 00000000..650acc3b --- /dev/null +++ b/recipes-bsp/atf/qoriq-atf_1.5.bb | |||
@@ -0,0 +1,249 @@ | |||
1 | DESCRIPTION = "ARM Trusted Firmware" | ||
2 | |||
3 | LICENSE = "BSD" | ||
4 | LIC_FILES_CHKSUM = "file://license.rst;md5=e927e02bca647e14efd87e9e914b2443" | ||
5 | |||
6 | PV = "1.5+git${SRCPV}" | ||
7 | |||
8 | inherit deploy | ||
9 | |||
10 | DEPENDS += "u-boot-mkimage-native u-boot openssl openssl-native mbedtls rcw cst-native" | ||
11 | DEPENDS_append_lx2160a = " ddr-phy" | ||
12 | do_compile[depends] += "u-boot:do_deploy rcw:do_deploy uefi:do_deploy" | ||
13 | |||
14 | S = "${WORKDIR}/git" | ||
15 | |||
16 | SRC_URI = "git://source.codeaurora.org/external/qoriq/qoriq-components/atf;nobranch=1" | ||
17 | SRCREV = "9225ad51f026975fa6b86db800f43c55db11fa4d" | ||
18 | |||
19 | COMPATIBLE_MACHINE = "(qoriq)" | ||
20 | |||
21 | PACKAGE_ARCH = "${MACHINE_ARCH}" | ||
22 | |||
23 | PLATFORM = "${MACHINE}" | ||
24 | PLATFORM_ls1088ardb-pb = "ls1088ardb" | ||
25 | PLATFORM_ADDITIONAL_TARGET ??= "" | ||
26 | PLATFORM_ADDITIONAL_TARGET_ls1012afrwy = "ls1012afrwy_512mb" | ||
27 | |||
28 | RCW_FOLDER ?= "${MACHINE}" | ||
29 | RCW_FOLDER_ls1088ardb-pb = "ls1088ardb" | ||
30 | |||
31 | # requires CROSS_COMPILE set by hand as there is no configure script | ||
32 | export CROSS_COMPILE="${TARGET_PREFIX}" | ||
33 | export ARCH="arm64" | ||
34 | |||
35 | # Let the Makefile handle setting up the CFLAGS and LDFLAGS as it is | ||
36 | # a standalone application | ||
37 | CFLAGS[unexport] = "1" | ||
38 | LDFLAGS[unexport] = "1" | ||
39 | AS[unexport] = "1" | ||
40 | LD[unexport] = "1" | ||
41 | |||
42 | EXTRA_OEMAKE += "HOSTCC='${BUILD_CC} ${BUILD_CPPFLAGS} ${BUILD_CFLAGS} ${BUILD_LDFLAGS}'" | ||
43 | |||
44 | BOOTTYPE ?= "nor nand qspi flexspi_nor sd emmc" | ||
45 | OTABOOTTYPE ?= "nor qspi flexspi_nor" | ||
46 | BUILD_SECURE = "${@bb.utils.contains('DISTRO_FEATURES', 'secure', 'true', 'false', d)}" | ||
47 | BUILD_OPTEE = "${@bb.utils.contains('COMBINED_FEATURES', 'optee', 'true', 'false', d)}" | ||
48 | BUILD_FUSE = "${@bb.utils.contains('DISTRO_FEATURES', 'fuse', 'true', 'false', d)}" | ||
49 | BUILD_OTA = "${@bb.utils.contains('DISTRO_FEATURES', 'ota', 'true', 'false', d)}" | ||
50 | |||
51 | PACKAGECONFIG ??= " \ | ||
52 | ${@bb.utils.filter('COMBINED_FEATURES', 'optee', d)} \ | ||
53 | " | ||
54 | PACKAGECONFIG[optee] = ",,optee-os-qoriq" | ||
55 | |||
56 | uboot_boot_sec ?= "${DEPLOY_DIR_IMAGE}/u-boot.bin-tfa-secure-boot" | ||
57 | uboot_boot ?= "${DEPLOY_DIR_IMAGE}/u-boot.bin-tfa" | ||
58 | rcw ?= "" | ||
59 | rcw_ls1012afrwy = "_default" | ||
60 | rcw_ls1012ardb = "_default" | ||
61 | rcwsec ?= "_sben" | ||
62 | |||
63 | chassistype ?= "ls2088_1088" | ||
64 | chassistype_ls1012ardb = "ls104x_1012" | ||
65 | chassistype_ls1012afrwy = "ls104x_1012" | ||
66 | chassistype_ls1043ardb = "ls104x_1012" | ||
67 | chassistype_ls1046ardb = "ls104x_1012" | ||
68 | chassistype_ls1046afrwy = "ls104x_1012" | ||
69 | |||
70 | ddrphyopt ?= "" | ||
71 | ddrphyopt_lx2160ardb = "fip_ddr_sec" | ||
72 | |||
73 | do_configure[noexec] = "1" | ||
74 | |||
75 | do_compile() { | ||
76 | export LIBPATH="${RECIPE_SYSROOT_NATIVE}" | ||
77 | install -d ${S}/include/tools_share/openssl | ||
78 | cp -r ${RECIPE_SYSROOT}/usr/include/openssl/* ${S}/include/tools_share/openssl | ||
79 | if [ ! -f ${RECIPE_SYSROOT_NATIVE}/usr/bin/cst/srk.pri ]; then | ||
80 | ${RECIPE_SYSROOT_NATIVE}/usr/bin/cst/gen_keys 1024 | ||
81 | else | ||
82 | cp ${RECIPE_SYSROOT_NATIVE}/usr/bin/cst/srk.pri ${S} | ||
83 | cp ${RECIPE_SYSROOT_NATIVE}/usr/bin/cst/srk.pub ${S} | ||
84 | fi | ||
85 | |||
86 | if [ "${BUILD_FUSE}" = "true" ]; then | ||
87 | ${RECIPE_SYSROOT_NATIVE}/usr/bin/cst/gen_fusescr ${RECIPE_SYSROOT_NATIVE}/usr/bin/cst/input_files/gen_fusescr/${chassistype}/input_fuse_file | ||
88 | fuseopt="fip_fuse FUSE_PROG=1 FUSE_PROV_FILE=fuse_scr.bin" | ||
89 | fi | ||
90 | if [ "${BUILD_SECURE}" = "true" ]; then | ||
91 | secureopt="TRUSTED_BOARD_BOOT=1 ${ddrphyopt} CST_DIR=${RECIPE_SYSROOT_NATIVE}/usr/bin/cst" | ||
92 | secext="_sec" | ||
93 | bl33="${uboot_boot_sec}" | ||
94 | if [ ${chassistype} = ls104x_1012 ]; then | ||
95 | rcwtemp="${rcwsec}" | ||
96 | else | ||
97 | rcwtemp="${rcw}" | ||
98 | fi | ||
99 | else | ||
100 | bl33="${uboot_boot}" | ||
101 | rcwtemp="${rcw}" | ||
102 | fi | ||
103 | |||
104 | if [ "${BUILD_OPTEE}" = "true" ]; then | ||
105 | bl32="${RECIPE_SYSROOT}${nonarch_base_libdir}/firmware/tee_${MACHINE}.bin" | ||
106 | bl32opt="BL32=${bl32}" | ||
107 | spdopt="SPD=opteed" | ||
108 | fi | ||
109 | |||
110 | if [ "${BUILD_OTA}" = "true" ]; then | ||
111 | otaopt="POLICY_OTA=1" | ||
112 | btype="${OTABOOTTYPE}" | ||
113 | else | ||
114 | btype="${BOOTTYPE}" | ||
115 | fi | ||
116 | |||
117 | if [ -f ${DEPLOY_DIR_IMAGE}/ddr-phy/ddr4_pmu_train_dmem.bin ]; then | ||
118 | cp ${DEPLOY_DIR_IMAGE}/ddr-phy/*.bin ${S}/ | ||
119 | fi | ||
120 | |||
121 | for d in ${btype}; do | ||
122 | case $d in | ||
123 | nor) | ||
124 | rcwimg="${RCWNOR}${rcwtemp}.bin" | ||
125 | uefiboot="${UEFI_NORBOOT}" | ||
126 | ;; | ||
127 | nand) | ||
128 | rcwimg="${RCWNAND}${rcwtemp}.bin" | ||
129 | ;; | ||
130 | qspi) | ||
131 | rcwimg="${RCWQSPI}${rcwtemp}.bin" | ||
132 | uefiboot="${UEFI_QSPIBOOT}" | ||
133 | if [ "${BUILD_SECURE}" = "true" ] && [ ${MACHINE} = ls1046ardb ]; then | ||
134 | rcwimg="RR_FFSSPPPH_1133_5559/rcw_1600_qspiboot_sben.bin" | ||
135 | fi | ||
136 | ;; | ||
137 | auto) | ||
138 | rcwimg="${RCWAUTO}${rcwtemp}.bin" | ||
139 | ;; | ||
140 | sd) | ||
141 | rcwimg="${RCWSD}${rcwtemp}.bin" | ||
142 | ;; | ||
143 | emmc) | ||
144 | rcwimg="${RCWEMMC}${rcwtemp}.bin" | ||
145 | ;; | ||
146 | flexspi_nor) | ||
147 | rcwimg="${RCWXSPI}${rcwtemp}.bin" | ||
148 | uefiboot="${UEFI_XSPIBOOT}" | ||
149 | ;; | ||
150 | esac | ||
151 | |||
152 | if [ -f "${DEPLOY_DIR_IMAGE}/rcw/${RCW_FOLDER}/${rcwimg}" ]; then | ||
153 | oe_runmake V=1 -C ${S} realclean | ||
154 | oe_runmake V=1 -C ${S} all fip pbl PLAT=${PLATFORM} BOOT_MODE=${d} RCW=${DEPLOY_DIR_IMAGE}/rcw/${RCW_FOLDER}/${rcwimg} BL33=${bl33} ${bl32opt} ${spdopt} ${secureopt} ${fuseopt} ${otaopt} | ||
155 | cp -r ${S}/build/${PLATFORM}/release/bl2_${d}*.pbl ${S} | ||
156 | cp -r ${S}/build/${PLATFORM}/release/fip.bin ${S} | ||
157 | if [ "${BUILD_FUSE}" = "true" ]; then | ||
158 | cp -f ${S}/build/${PLATFORM}/release/fuse_fip.bin ${S} | ||
159 | fi | ||
160 | |||
161 | if [ -n "${PLATFORM_ADDITIONAL_TARGET}" ]; then | ||
162 | oe_runmake V=1 -C ${S} realclean | ||
163 | oe_runmake V=1 -C ${S} all fip pbl PLAT=${PLATFORM_ADDITIONAL_TARGET} BOOT_MODE=${d} RCW=${DEPLOY_DIR_IMAGE}/rcw/${RCW_FOLDER}/${rcwimg} BL33=${bl33} ${bl32opt} ${spdopt} ${secureopt} ${fuseopt} ${otaopt} | ||
164 | cp -r ${S}/build/${PLATFORM_ADDITIONAL_TARGET}/release/bl2_qspi${secext}.pbl ${S}/bl2_${d}${secext}_${PLATFORM_ADDITIONAL_TARGET}.pbl | ||
165 | cp -r ${S}/build/${PLATFORM_ADDITIONAL_TARGET}/release/fip.bin ${S}/fip_${PLATFORM_ADDITIONAL_TARGET}.bin | ||
166 | if [ "${BUILD_FUSE}" = "true" ]; then | ||
167 | cp -r ${S}/build/${PLATFORM_ADDITIONAL_TARGET}/release/fuse_fip.bin ${S}/fuse_fip_${PLATFORM_ADDITIONAL_TARGET}.bin | ||
168 | fi | ||
169 | fi | ||
170 | if [ -n "${uefiboot}" -a -f "${DEPLOY_DIR_IMAGE}/uefi/${PLATFORM}/${uefiboot}" ]; then | ||
171 | oe_runmake V=1 -C ${S} realclean | ||
172 | oe_runmake V=1 -C ${S} all fip pbl PLAT=${PLATFORM} BOOT_MODE=${d} RCW=${DEPLOY_DIR_IMAGE}/rcw/${RCW_FOLDER}/${rcwimg} BL33=${DEPLOY_DIR_IMAGE}/uefi/${PLATFORM}/${uefiboot} ${bl32opt} ${spdopt} ${secureopt} ${fuseopt} ${otaopt} | ||
173 | cp -r ${S}/build/${PLATFORM}/release/fip.bin ${S}/fip_uefi.bin | ||
174 | fi | ||
175 | fi | ||
176 | rcwimg="" | ||
177 | uefiboot="" | ||
178 | done | ||
179 | } | ||
180 | |||
181 | do_install() { | ||
182 | install -d ${D}/boot/atf | ||
183 | cp -r ${S}/srk.pri ${D}/boot/atf | ||
184 | cp -r ${S}/srk.pub ${D}/boot/atf | ||
185 | if [ "${BUILD_SECURE}" = "true" ]; then | ||
186 | secext="_sec" | ||
187 | fi | ||
188 | if [ -f "${S}/fip_uefi.bin" ]; then | ||
189 | cp -r ${S}/fip_uefi.bin ${D}/boot/atf/fip_uefi.bin | ||
190 | fi | ||
191 | if [ -f "${S}/fuse_fip.bin" ]; then | ||
192 | cp -r ${S}/fuse_fip.bin ${D}/boot/atf/fuse_fip.bin | ||
193 | fi | ||
194 | if [ -f "${S}/fip.bin" ]; then | ||
195 | cp -r ${S}/fip.bin ${D}/boot/atf/fip.bin | ||
196 | fi | ||
197 | for d in ${BOOTTYPE}; do | ||
198 | if [ -e ${S}/bl2_${d}${secext}.pbl ]; then | ||
199 | cp -r ${S}/bl2_${d}${secext}.pbl ${D}/boot/atf/bl2_${d}${secext}.pbl | ||
200 | fi | ||
201 | done | ||
202 | if [ -n "${PLATFORM_ADDITIONAL_TARGET}" ]; then | ||
203 | cp -r ${S}/fip_${PLATFORM_ADDITIONAL_TARGET}.bin ${D}/boot/atf/fip_${PLATFORM_ADDITIONAL_TARGET}.bin | ||
204 | cp -r ${S}/bl2_qspi${secext}_${PLATFORM_ADDITIONAL_TARGET}.pbl ${D}/boot/atf/bl2_qspi${secext}_${PLATFORM_ADDITIONAL_TARGET}.pbl | ||
205 | if [ -f "${S}/fuse_fip_${PLATFORM_ADDITIONAL_TARGET}.bin" ]; then | ||
206 | cp -r ${S}/fuse_fip_${PLATFORM_ADDITIONAL_TARGET}.bin ${D}/boot/atf/fuse_fip_${PLATFORM_ADDITIONAL_TARGET}.bin | ||
207 | fi | ||
208 | fi | ||
209 | chown -R root:root ${D} | ||
210 | if [ -f "${S}/fip_ddr_sec.bin" ]; then | ||
211 | cp -r ${S}/fip_ddr_sec.bin ${D}/boot/atf/fip_ddr_sec.bin | ||
212 | fi | ||
213 | } | ||
214 | |||
215 | do_deploy() { | ||
216 | install -d ${DEPLOYDIR}/atf | ||
217 | cp -r ${D}/boot/atf/srk.pri ${DEPLOYDIR}/atf | ||
218 | cp -r ${D}/boot/atf/srk.pub ${DEPLOYDIR}/atf | ||
219 | if [ "${BUILD_SECURE}" = "true" ]; then | ||
220 | secext="_sec" | ||
221 | fi | ||
222 | |||
223 | if [ -f "${S}/fuse_fip.bin" ]; then | ||
224 | cp -r ${D}/boot/atf/fuse_fip.bin ${DEPLOYDIR}/atf/fuse_fip${secext}.bin | ||
225 | fi | ||
226 | |||
227 | if [ -e ${D}/boot/atf/fip_uefi.bin ]; then | ||
228 | cp -r ${D}/boot/atf/fip_uefi.bin ${DEPLOYDIR}/atf/fip_uefi.bin | ||
229 | fi | ||
230 | cp -r ${D}/boot/atf/fip.bin ${DEPLOYDIR}/atf/fip_uboot${secext}.bin | ||
231 | for d in ${BOOTTYPE}; do | ||
232 | if [ -e ${D}/boot/atf/bl2_${d}${secext}.pbl ]; then | ||
233 | cp -r ${D}/boot/atf/bl2_${d}${secext}.pbl ${DEPLOYDIR}/atf/bl2_${d}${secext}.pbl | ||
234 | fi | ||
235 | done | ||
236 | if [ -n "${PLATFORM_ADDITIONAL_TARGET}" ]; then | ||
237 | cp -r ${S}/bl2_qspi${secext}_${PLATFORM_ADDITIONAL_TARGET}.pbl ${DEPLOYDIR}/atf/ | ||
238 | cp -r ${S}/fip_${PLATFORM_ADDITIONAL_TARGET}.bin ${DEPLOYDIR}/atf/fip_uboot${secext}_${PLATFORM_ADDITIONAL_TARGET}.bin | ||
239 | if [ -f "${S}/fuse_fip_${PLATFORM_ADDITIONAL_TARGET}.bin" ]; then | ||
240 | cp -r ${S}/fuse_fip_${PLATFORM_ADDITIONAL_TARGET}.bin ${D}/boot/atf/fuse_fip_${PLATFORM_ADDITIONAL_TARGET}${secext}.bin | ||
241 | fi | ||
242 | fi | ||
243 | if [ -f "${S}/fip_ddr_sec.bin" ]; then | ||
244 | cp -r ${D}/boot/atf/fip_ddr_sec.bin ${DEPLOYDIR}/atf/fip_ddr_sec.bin | ||
245 | fi | ||
246 | } | ||
247 | addtask deploy after do_install | ||
248 | FILES_${PN} += "/boot" | ||
249 | BBCLASSEXTEND = "native nativesdk" | ||