Complete Yocto mirror with license table for TQMa6UL (2038-compliance)
- 264 license table entries with exact download URLs (224/264 resolved) - Complete sources/ directory with all BitBake recipes - Build configuration: tqma6ul-multi-mba6ulx, spaetzle (musl) - Full traceability for Softwarefreigabeantrag - GCC 13.4.0, Linux 6.6.102, U-Boot 2023.04, musl 1.2.4 - License distribution: GPL-2.0 (24), MIT (23), GPL-2.0+ (18), BSD-3 (16)
This commit is contained in:
82
sources/meta-freescale/recipes-bsp/imx-atf/imx-atf_2.10.bb
Normal file
82
sources/meta-freescale/recipes-bsp/imx-atf/imx-atf_2.10.bb
Normal file
@@ -0,0 +1,82 @@
|
||||
# Copyright (C) 2017-2024 NXP
|
||||
|
||||
DESCRIPTION = "i.MX ARM Trusted Firmware"
|
||||
SECTION = "BSP"
|
||||
LICENSE = "BSD-3-Clause"
|
||||
LIC_FILES_CHKSUM = "file://${COREBASE}/meta/files/common-licenses/BSD-3-Clause;md5=550794465ba0ec5312d6919e203a55f9"
|
||||
|
||||
PV .= "+git${SRCPV}"
|
||||
|
||||
SRC_URI = "git://github.com/nxp-imx/imx-atf.git;protocol=https;branch=${SRCBRANCH}"
|
||||
SRCBRANCH = "lf_v2.10_6.6.52_2.2.x"
|
||||
SRCREV = "7e374c5f57328949a2b141a567175b6a2939e964"
|
||||
|
||||
S = "${WORKDIR}/git"
|
||||
|
||||
inherit deploy
|
||||
|
||||
ATF_PLATFORM ??= "INVALID"
|
||||
|
||||
# FIXME: We should return INVALID here but currently only i.MX8M has support to override the UART
|
||||
# base address in source code.
|
||||
ATF_BOOT_UART_BASE ?= ""
|
||||
|
||||
EXTRA_OEMAKE += " \
|
||||
CROSS_COMPILE=${TARGET_PREFIX} \
|
||||
PLAT=${ATF_PLATFORM} \
|
||||
"
|
||||
|
||||
# Let the Makefile handle setting up the CFLAGS and LDFLAGS as it is a standalone application
|
||||
CFLAGS[unexport] = "1"
|
||||
LDFLAGS[unexport] = "1"
|
||||
AS[unexport] = "1"
|
||||
LD[unexport] = "1"
|
||||
|
||||
# Baremetal, just need a compiler
|
||||
INHIBIT_DEFAULT_DEPS = "1"
|
||||
DEPENDS = "virtual/${HOST_PREFIX}gcc"
|
||||
|
||||
# Bring in clang compiler if using clang as default
|
||||
DEPENDS:append:toolchain-clang = " clang-cross-${TARGET_ARCH}"
|
||||
|
||||
BUILD_OPTEE = "${@bb.utils.contains('MACHINE_FEATURES', 'optee', 'true', 'false', d)}"
|
||||
|
||||
# CC and LD introduce arguments which conflict with those otherwise provided by
|
||||
# this recipe. The heads of these variables excluding those arguments
|
||||
# are therefore used instead.
|
||||
def remove_options_tail (in_string):
|
||||
from itertools import takewhile
|
||||
return ' '.join(takewhile(lambda x: not x.startswith('-'), in_string.split(' ')))
|
||||
|
||||
# LD can have linker suffix in its name e.g. aarch64-yoe-linux-ld.lld so we need to
|
||||
# drop .lld as well along with options from LD
|
||||
EXTRA_OEMAKE += 'LD="${HOST_PREFIX}ld.bfd"'
|
||||
|
||||
EXTRA_OEMAKE += 'CC="${@remove_options_tail(d.getVar('CC'))}"'
|
||||
|
||||
# Set the UART to use during the boot.
|
||||
EXTRA_OEMAKE += 'IMX_BOOT_UART_BASE=${ATF_BOOT_UART_BASE}'
|
||||
|
||||
do_configure[noexec] = "1"
|
||||
|
||||
do_compile() {
|
||||
# Clear LDFLAGS to avoid the option -Wl recognize issue
|
||||
oe_runmake bl31
|
||||
if ${BUILD_OPTEE}; then
|
||||
oe_runmake clean BUILD_BASE=build-optee
|
||||
oe_runmake BUILD_BASE=build-optee SPD=opteed bl31
|
||||
fi
|
||||
}
|
||||
|
||||
do_install[noexec] = "1"
|
||||
|
||||
addtask deploy after do_compile
|
||||
do_deploy() {
|
||||
install -Dm 0644 ${S}/build/${ATF_PLATFORM}/release/bl31.bin ${DEPLOYDIR}/bl31-${ATF_PLATFORM}.bin
|
||||
if ${BUILD_OPTEE}; then
|
||||
install -m 0644 ${S}/build-optee/${ATF_PLATFORM}/release/bl31.bin ${DEPLOYDIR}/bl31-${ATF_PLATFORM}.bin-optee
|
||||
fi
|
||||
}
|
||||
|
||||
PACKAGE_ARCH = "${MACHINE_ARCH}"
|
||||
COMPATIBLE_MACHINE = "(mx8-generic-bsp|mx9-generic-bsp)"
|
||||
Reference in New Issue
Block a user