gatesgarth migration: optee-imx: Sync with BSP release rel_imx_5.10.9_1.0.0

https://jira.digi.com/browse/DEL-7508

Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
This commit is contained in:
Arturo Buzarra 2021-04-28 18:39:45 +02:00
parent ca5a2cce23
commit b7db48e644
6 changed files with 45 additions and 173 deletions

View File

@ -1,58 +1,3 @@
# Copyright (C) 2017-2020 NXP
# Copyright (C) 2019-2020 NXP
SUMMARY = "OPTEE Client libs"
HOMEPAGE = "http://www.optee.org/"
LICENSE = "BSD"
LIC_FILES_CHKSUM = "file://LICENSE;md5=69663ab153298557a59c67a60a743e5b"
inherit pythonnative systemd
OPTEE_CLIENT_SRC ?= "git://source.codeaurora.org/external/imx/imx-optee-client.git;protocol=https"
SRC_URI = "${OPTEE_CLIENT_SRC};branch=${SRCBRANCH}"
FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"
SRC_URI_append = " file://tee-supplicant.service"
S = "${WORKDIR}/git"
B = "${WORKDIR}/build"
SYSTEMD_SERVICE_${PN} = "tee-supplicant.service"
EXTRA_OEMAKE += "O=${B}"
do_compile () {
if [ ${DEFAULTTUNE} = "aarch64" ]; then
oe_runmake -C ${S} ARCH=arm64
else
oe_runmake -C ${S} ARCH=arm
fi
}
do_install() {
oe_runmake -C ${S} install
install -D -p -m0755 ${B}/export/usr/sbin/tee-supplicant ${D}${bindir}/tee-supplicant
install -D -p -m0644 ${B}/export/usr/lib/libteec.so.1.0 ${D}${libdir}/libteec.so.1.0
ln -sf libteec.so.1.0 ${D}${libdir}/libteec.so
ln -sf libteec.so.1.0 ${D}${libdir}/libteec.so.1
cp -a ${B}/export/usr/include ${D}/usr/
sed -i -e s:/etc:${sysconfdir}:g \
-e s:/usr/bin:${bindir}:g \
${WORKDIR}/tee-supplicant.service
install -D -p -m0644 ${WORKDIR}/tee-supplicant.service ${D}${systemd_system_unitdir}/tee-supplicant.service
}
PACKAGES += "tee-supplicant"
FILES_${PN} += "${libdir}/* ${includedir}/*"
FILES_tee-supplicant += "${bindir}/tee-supplicant"
INSANE_SKIP_${PN} = "ldflags dev-elf"
INSANE_SKIP_${PN}-dev = "ldflags dev-elf"
INSANE_SKIP_tee-supplicant = "ldflags"
COMPATIBLE_MACHINE = "(mx6|mx7|mx8)"
require recipes-security/optee-imx/optee-client_3.7.0.imx.bb

View File

@ -1,6 +1,10 @@
# Copyright (C) 2020 NXP
require optee-client.imx.inc
SRCBRANCH = "imx_5.4.70_2.3.0"
SRCREV = "2a77cf88d956c34cb4a1c191bea6113e327f5fe0"
FILESEXTRAPATHS_prepend := "${THISDIR}/optee-client:"
OPTEE_CLIENT_SRC ?= "git://source.codeaurora.org/external/imx/imx-optee-client.git;protocol=https"
SRC_URI = "${OPTEE_CLIENT_SRC};branch=${SRCBRANCH} \
file://tee-supplicant.service"
SRCBRANCH = "lf-5.10.y_1.0.0"
SRCREV = "2a77cf88d956c34cb4a1c191bea6113e327f5fe0"

View File

@ -1,54 +1,21 @@
# Copyright (C) 2017-2020 NXP
# Copyright (C) 2019-2020 NXP
require recipes-security/optee-imx/optee-os_3.7.0.imx.bb
SUMMARY = "OPTEE OS"
DESCRIPTION = "OPTEE OS"
HOMEPAGE = "http://www.optee.org/"
LICENSE = "BSD"
LIC_FILES_CHKSUM = "file://LICENSE;md5=c1f21c4f72f372ef38a5a4aee55ec173"
inherit deploy python3native autotools
DEPENDS = "python3-pycrypto-native python3-pyelftools-native u-boot-mkimage-native"
OPTEE_OS_SRC ?= "git://source.codeaurora.org/external/imx/imx-optee-os.git;protocol=https"
SRC_URI = "${OPTEE_OS_SRC};branch=${SRCBRANCH}"
S = "${WORKDIR}/git"
B = "${WORKDIR}/build.${PLATFORM_FLAVOR}"
# The platform flavor corresponds to the Yocto machine without the leading 'i'.
PLATFORM_FLAVOR = "${@d.getVar('MACHINE')[1:]}"
PLATFORM_FLAVOR_imx6qpdlsolox = "mx6qsabresd"
PLATFORM_FLAVOR_imx6ul7d = "mx6ulevk"
PLATFORM_FLAVOR_imx6ull14x14evk = "mx6ullevk"
PLATFORM_FLAVOR_imx6ull9x9evk = "mx6ullevk"
PLATFORM_FLAVOR_imx6ulz14x14evk = "mx6ulzevk"
PLATFORM_FLAVOR_mx8mm = "mx8mmevk"
PLATFORM_FLAVOR_mx8mn = "mx8mnevk"
PLATFORM_FLAVOR_mx8mnlite = "mx8mnevk"
PLATFORM_FLAVOR_mx8qxp = "mx8qxpmek"
PLATFORM_FLAVOR_mx8mp = "mx8mpevk"
PLATFORM_FLAVOR_mx8dx = "mx8dxmek"
PLATFORM_FLAVOR_mx8dxl = "mx8dxlevk"
PLATFORM_FLAVOR_mx8phantomdxl = "mx8qxpmek"
SRC_URI_remove = " \
file://0001-optee-os-fix-gcc10-compilation-issue-and-missing-cc-.patch"
OPTEE_CORE_LOG_LEVEL ?= "1"
OPTEE_TA_LOG_LEVEL ?= "0"
OPTEE_ARCH ?= "arm32"
OPTEE_ARCH_armv7a = "arm32"
OPTEE_ARCH_aarch64 = "arm64"
PLATFORM_FLAVOR_mx8mnlite = "mx8mnevk"
# Optee-os can be built for 32 bits and 64 bits at the same time
# as long as the compilers are correctly defined.
# For 64bits, CROSS_COMPILE64 must be set
# When defining CROSS_COMPILE and CROSS_COMPILE64, we assure that
# any 32 or 64 bits builds will pass
EXTRA_OEMAKE = "PLATFORM=imx PLATFORM_FLAVOR=${PLATFORM_FLAVOR} \
CROSS_COMPILE=${HOST_PREFIX} \
CROSS_COMPILE64=${HOST_PREFIX} \
LDFLAGS= \
O=${B} \
CFG_WERROR=y \
EXTRA_OEMAKE_remove = "NOWERROR=1 \
"
EXTRA_OEMAKE += "CFG_WERROR=y \
CFG_TEE_CORE_LOG_LEVEL=${OPTEE_CORE_LOG_LEVEL} \
CFG_TEE_TA_LOG_LEVEL=${OPTEE_TA_LOG_LEVEL} \
"
@ -59,39 +26,3 @@ do_compile () {
oe_runmake -C ${S} all
}
do_deploy () {
install -d ${DEPLOYDIR}
${TARGET_PREFIX}objcopy -O binary ${B}/core/tee.elf ${DEPLOYDIR}/tee.${PLATFORM_FLAVOR}.bin
if [ "${OPTEE_ARCH}" != "arm64" ]; then
IMX_LOAD_ADDR=`cat ${B}/core/tee-init_load_addr.txt` && \
uboot-mkimage -A arm -O linux -C none -a ${IMX_LOAD_ADDR} -e ${IMX_LOAD_ADDR} \
-d ${DEPLOYDIR}/tee.${PLATFORM_FLAVOR}.bin ${DEPLOYDIR}/uTee-${OPTEE_BIN_EXT}
fi
cd ${DEPLOYDIR}
ln -sf tee.${PLATFORM_FLAVOR}.bin tee.bin
cd -
}
do_install () {
install -d ${D}${nonarch_base_libdir}/firmware/
install -m 644 ${B}/core/*.bin ${D}${nonarch_base_libdir}/firmware/
# Install the TA devkit
install -d ${D}/usr/include/optee/export-user_ta_${OPTEE_ARCH}/
for f in ${B}/export-ta_${OPTEE_ARCH}/*; do
cp -aR $f ${D}/usr/include/optee/export-user_ta_${OPTEE_ARCH}/
done
}
addtask deploy after do_compile before do_install
FILES_${PN} = "${nonarch_base_libdir}/firmware/"
FILES_${PN}-staticdev = "/usr/include/optee/"
RDEPENDS_${PN}-dev += "${PN}-staticdev"
PACKAGE_ARCH = "${MACHINE_ARCH}"
COMPATIBLE_MACHINE = "(imx)"

View File

@ -3,8 +3,11 @@ require optee-os.imx.inc
DEPENDS_append = " python3-pycryptodomex-native"
SRCBRANCH = "imx_5.4.70_2.3.0"
SRCREV = "a991c90475bb1c715651e5fe27f7f32cbe61aef9"
OPTEE_OS_SRC ?= "git://source.codeaurora.org/external/imx/imx-optee-os.git;protocol=https"
SRC_URI = "${OPTEE_OS_SRC};branch=${SRCBRANCH}"
SRCBRANCH = "lf-5.10.y_1.0.0"
SRCREV = "87956c343f6a1a24dfe57e7d5c77dfc10b45148c"
# tee-init_load_addr.txt has been remove in lates optee-os version.
# to keep backward compatibility with existing optee-os recipe.

View File

@ -1,4 +1,4 @@
# Copyright (C) 2017-2020 NXP
# Copyright (C) 2020 NXP
SUMMARY = "OPTEE test"
HOMEPAGE = "http://www.optee.org/"
@ -6,24 +6,20 @@ HOMEPAGE = "http://www.optee.org/"
LICENSE = "BSD"
LIC_FILES_CHKSUM = "file://LICENSE.md;md5=daa2bcccc666345ab8940aab1315a4fa"
inherit python3native
DEPENDS = "optee-os optee-client python3-pycrypto-native openssl"
inherit python3native cmake
FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"
OPTEE_TEST_SRC ?= "git://source.codeaurora.org/external/imx/imx-optee-test.git;protocol=https"
SRC_URI = "${OPTEE_TEST_SRC};branch=${SRCBRANCH} \
"
S = "${WORKDIR}/git"
B = "${WORKDIR}/build"
TA_DEV_KIT_DIR_aarch64 = "${STAGING_INCDIR}/optee/export-user_ta_arm64/"
OPTEE_ARCH ?= "arm"
OPTEE_ARCH_armv7a = "arm32"
OPTEE_ARCH_aarch64 = "arm64"
TA_DEV_KIT_DIR_arm = "${STAGING_INCDIR}/optee/export-user_ta_arm32/"
OPTEE_ARCH_arm = "arm"
TA_DEV_KIT_DIR_aarch64 = "${STAGING_INCDIR}/optee/export-user_ta_arm64/"
EXTRA_OEMAKE = " \
TA_DEV_KIT_DIR=${TA_DEV_KIT_DIR} \
@ -36,21 +32,11 @@ EXTRA_OEMAKE = " \
-C ${S} O=${B} \
"
EXTRA_OECMAKE = " \
-DOPTEE_TEST_SDK=${TA_DEV_KIT_DIR} \
"
do_compile () {
export CXXFLAGS="${CXXFLAGS} --sysroot=${STAGING_DIR_HOST}"
if [ ${DEFAULTTUNE} = "aarch64" ];then
export TA_DEV_KIT_DIR=${STAGING_INCDIR}/optee/export-user_ta_arm64/
export ARCH=arm64
else
export TA_DEV_KIT_DIR=${STAGING_INCDIR}/optee/export-user_ta_arm32/
export ARCH=arm
fi
export OPTEE_CLIENT_EXPORT=${STAGING_DIR_HOST}/usr
export CROSS_COMPILE_HOST=${HOST_PREFIX}
export CROSS_COMPILE_TA=${HOST_PREFIX}
export CROSS_COMPILE=${HOST_PREFIX}
export OPTEE_OPENSSL_EXPORT=${STAGING_INCDIR}/
oe_runmake V=1
}

View File

@ -3,7 +3,10 @@ require optee-test.imx.inc
DEPENDS_append = " python3-pycryptodomex-native"
SRCBRANCH = "imx_5.4.70_2.3.0"
OPTEE_TEST_SRC ?= "git://source.codeaurora.org/external/imx/imx-optee-test.git;protocol=https"
SRC_URI = "${OPTEE_TEST_SRC};branch=${SRCBRANCH}"
SRCBRANCH = "lf-5.10.y_1.0.0"
SRCREV = "0c998f42a3fb87b9f2929955cf4b0116cc515091"
do_compile_prepend () {