From f8182afdcfe427865707077d353359827f1ff6bf Mon Sep 17 00:00:00 2001 From: Andrew Davis Date: Thu, 16 Jun 2022 11:42:14 -0500 Subject: optee: Upgrade to upstream 3.17.0 Update to the latest upstream master which is 3.17. We do this to add HUK and AM64x/AM62x support. With this we need to also switch OPTEEMACHINE for AM64x/AM62x. To build against the latest OP-TEE the support recipes need updated also. Move these here into meta-ti so that builds will still work when not using meta-arago-distro. The fix patches do not look to be needed anymore. While here switch to git checkout with https. NOTE: The latest OP-TEE requires SYSFW 8.04+ Signed-off-by: Andrew Davis Signed-off-by: Ryan Eatmon --- conf/machine/include/am62xx.inc | 2 +- conf/machine/include/am64xx.inc | 2 +- recipes-security/optee/optee-client_%.bbappend | 2 ++ recipes-security/optee/optee-examples_%.bbappend | 2 ++ ...6-allow-setting-sysroot-for-libgcc-lookup.patch | 34 ---------------------- .../0007-allow-setting-sysroot-for-clang.patch | 29 ------------------ recipes-security/optee/optee-os_%.bbappend | 14 +++------ recipes-security/optee/optee-test_%.bbappend | 5 ++++ 8 files changed, 15 insertions(+), 75 deletions(-) create mode 100644 recipes-security/optee/optee-client_%.bbappend create mode 100644 recipes-security/optee/optee-examples_%.bbappend delete mode 100644 recipes-security/optee/optee-os/0006-allow-setting-sysroot-for-libgcc-lookup.patch delete mode 100644 recipes-security/optee/optee-os/0007-allow-setting-sysroot-for-clang.patch create mode 100644 recipes-security/optee/optee-test_%.bbappend diff --git a/conf/machine/include/am62xx.inc b/conf/machine/include/am62xx.inc index ff857b97..0364edd1 100644 --- a/conf/machine/include/am62xx.inc +++ b/conf/machine/include/am62xx.inc @@ -15,5 +15,5 @@ do_image_wic[mcdepends] = "mc::k3r5:ti-sci-fw:do_deploy" do_image_tar[mcdepends] = "mc::k3r5:ti-sci-fw:do_deploy" TFA_BOARD = "lite" -OPTEEMACHINE = "k3-am65x" +OPTEEMACHINE = "k3-am62x" OPTEEOUTPUTMACHINE = "k3" diff --git a/conf/machine/include/am64xx.inc b/conf/machine/include/am64xx.inc index 918aa038..8e8e146f 100644 --- a/conf/machine/include/am64xx.inc +++ b/conf/machine/include/am64xx.inc @@ -21,7 +21,7 @@ do_image_wic[mcdepends] = "mc::k3r5:ti-sci-fw:do_deploy" do_image_tar[mcdepends] = "mc::k3r5:ti-sci-fw:do_deploy" TFA_BOARD = "lite" -OPTEEMACHINE = "k3-am65x" +OPTEEMACHINE = "k3-am64x" OPTEEOUTPUTMACHINE = "k3" # Set the list of device targets for ti-pdk class recipes diff --git a/recipes-security/optee/optee-client_%.bbappend b/recipes-security/optee/optee-client_%.bbappend new file mode 100644 index 00000000..5675570a --- /dev/null +++ b/recipes-security/optee/optee-client_%.bbappend @@ -0,0 +1,2 @@ +PV_ti-soc = "3.17.0+git${SRCPV}" +SRCREV_ti-soc = "a5c30b1277466a9bf85b62f45a6b00e79774e29c" diff --git a/recipes-security/optee/optee-examples_%.bbappend b/recipes-security/optee/optee-examples_%.bbappend new file mode 100644 index 00000000..19e32d9d --- /dev/null +++ b/recipes-security/optee/optee-examples_%.bbappend @@ -0,0 +1,2 @@ +PV_ti-soc = "3.17.0+git${SRCPV}" +SRCREV_ti-soc = "65fc74309e12189ad5b6ce3ffec37c8011088a5a" diff --git a/recipes-security/optee/optee-os/0006-allow-setting-sysroot-for-libgcc-lookup.patch b/recipes-security/optee/optee-os/0006-allow-setting-sysroot-for-libgcc-lookup.patch deleted file mode 100644 index 17005396..00000000 --- a/recipes-security/optee/optee-os/0006-allow-setting-sysroot-for-libgcc-lookup.patch +++ /dev/null @@ -1,34 +0,0 @@ -From 0bab935695ebcf0c533b49896ab18ff33d4a47d1 Mon Sep 17 00:00:00 2001 -From: Ross Burton -Date: Tue, 26 May 2020 14:38:02 -0500 -Subject: [PATCH] allow setting sysroot for libgcc lookup - -Explicitly pass the new variable LIBGCC_LOCATE_CFLAGS variable when searching -for the compiler libraries as there's no easy way to reliably pass --sysroot -otherwise. - -Upstream-Status: Pending [https://github.com/OP-TEE/optee_os/issues/4188] -Signed-off-by: Ross Burton ---- - mk/gcc.mk | 6 +++--- - 1 file changed, 3 insertions(+), 3 deletions(-) - -diff --git a/mk/gcc.mk b/mk/gcc.mk -index adc77a24..81bfa78a 100644 ---- a/mk/gcc.mk -+++ b/mk/gcc.mk -@@ -13,11 +13,11 @@ nostdinc$(sm) := -nostdinc -isystem $(shell $(CC$(sm)) \ - -print-file-name=include 2> /dev/null) - - # Get location of libgcc from gcc --libgcc$(sm) := $(shell $(CC$(sm)) $(CFLAGS$(arch-bits-$(sm))) \ -+libgcc$(sm) := $(shell $(CC$(sm)) $(LIBGCC_LOCATE_CFLAGS) $(CFLAGS$(arch-bits-$(sm))) \ - -print-libgcc-file-name 2> /dev/null) --libstdc++$(sm) := $(shell $(CXX$(sm)) $(CXXFLAGS$(arch-bits-$(sm))) $(comp-cxxflags$(sm)) \ -+libstdc++$(sm) := $(shell $(CXX$(sm)) $(LIBGCC_LOCATE_CFLAGS) $(CXXFLAGS$(arch-bits-$(sm))) $(comp-cxxflags$(sm)) \ - -print-file-name=libstdc++.a 2> /dev/null) --libgcc_eh$(sm) := $(shell $(CXX$(sm)) $(CXXFLAGS$(arch-bits-$(sm))) $(comp-cxxflags$(sm)) \ -+libgcc_eh$(sm) := $(shell $(CXX$(sm)) $(LIBGCC_LOCATE_CFLAGS) $(CXXFLAGS$(arch-bits-$(sm))) $(comp-cxxflags$(sm)) \ - -print-file-name=libgcc_eh.a 2> /dev/null) - - # Define these to something to discover accidental use diff --git a/recipes-security/optee/optee-os/0007-allow-setting-sysroot-for-clang.patch b/recipes-security/optee/optee-os/0007-allow-setting-sysroot-for-clang.patch deleted file mode 100644 index 5c0d0a56..00000000 --- a/recipes-security/optee/optee-os/0007-allow-setting-sysroot-for-clang.patch +++ /dev/null @@ -1,29 +0,0 @@ -From 3167f2c0dba4db59d61b60a8fe66f969d20aafa9 Mon Sep 17 00:00:00 2001 -From: Brett Warren -Date: Wed, 23 Sep 2020 09:27:34 +0100 -Subject: [PATCH] optee: enable clang support - -When compiling with clang, the LIBGCC_LOCATE_CFLAG variable used -to provide a sysroot wasn't included, which results in not locating -compiler-rt. This is mitigated by including the variable as ammended. - -Upstream-Status: Pending -ChangeId: 8ba69a4b2eb8ebaa047cb266c9aa6c2c3da45701 -Signed-off-by: Brett Warren ---- - mk/clang.mk | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/mk/clang.mk b/mk/clang.mk -index 0f48c836..47465523 100644 ---- a/mk/clang.mk -+++ b/mk/clang.mk -@@ -27,7 +27,7 @@ comp-cflags-warns-clang := -Wno-language-extension-token \ - - # Note, use the compiler runtime library (libclang_rt.builtins.*.a) instead of - # libgcc for clang --libgcc$(sm) := $(shell $(CC$(sm)) $(CFLAGS$(arch-bits-$(sm))) \ -+libgcc$(sm) := $(shell $(CC$(sm)) $(LIBGCC_LOCATE_CFLAGS) $(CFLAGS$(arch-bits-$(sm))) \ - -rtlib=compiler-rt -print-libgcc-file-name 2> /dev/null) - - # Core ASLR relies on the executable being ready to run from its preferred load diff --git a/recipes-security/optee/optee-os_%.bbappend b/recipes-security/optee/optee-os_%.bbappend index e128da89..16c10979 100644 --- a/recipes-security/optee/optee-os_%.bbappend +++ b/recipes-security/optee/optee-os_%.bbappend @@ -1,14 +1,8 @@ -FILESEXTRAPATHS_prepend_ti-soc := "${THISDIR}/${PN}:" +PV_ti-soc = "3.17.0+git${SRCPV}" +SRCREV_ti-soc = "15a746d28d10df3d79d72bc9fe4a5a654b88bcca" +SRC_URI_ti-soc = "git://github.com/OP-TEE/optee_os.git;protocol=https" -PV_ti-soc = "3.12.0+git${SRCPV}" - -SRCREV_ti-soc = "3d47a131bca1d9ed511bfd516aa5e70269e12c1d" - -SRC_URI_ti-soc = " \ - git://github.com/OP-TEE/optee_os.git \ - file://0006-allow-setting-sysroot-for-libgcc-lookup.patch \ - file://0007-allow-setting-sysroot-for-clang.patch \ -" +DEPENDS_append_ti-soc = " python3-cryptography-native" EXTRA_OEMAKE_append_k3 = "${@ 'CFG_CONSOLE_UART='+ d.getVar('OPTEE_K3_USART') if d.getVar('OPTEE_K3_USART') else ''}" diff --git a/recipes-security/optee/optee-test_%.bbappend b/recipes-security/optee/optee-test_%.bbappend new file mode 100644 index 00000000..d81ae521 --- /dev/null +++ b/recipes-security/optee/optee-test_%.bbappend @@ -0,0 +1,5 @@ +PV_ti-soc = "3.17.0+git${SRCPV}" +SRCREV_ti-soc = "8a698baf9e8e010e4d8d52e6aded42dfc31e5b25" +SRC_URI_ti-soc = "git://github.com/OP-TEE/optee_test.git;protocol=https" + +DEPENDS_append_ti-soc = " python3-cryptography-native" -- cgit v1.2.3-54-g00ecf