From patchwork Tue Sep 17 00:04:02 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jon Mason X-Patchwork-Id: 49190 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from aws-us-west-2-korg-lkml-1.web.codeaurora.org (localhost.localdomain [127.0.0.1]) by smtp.lore.kernel.org (Postfix) with ESMTP id 8130EC3ABB2 for ; Tue, 17 Sep 2024 00:04:14 +0000 (UTC) Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by mx.groups.io with SMTP id smtpd.web10.9852.1726531446640751180 for ; Mon, 16 Sep 2024 17:04:07 -0700 Authentication-Results: mx.groups.io; dkim=none (message not signed); spf=pass (domain: arm.com, ip: 217.140.110.172, mailfrom: jon.mason@arm.com) Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 34BA9113E for ; Mon, 16 Sep 2024 17:04:35 -0700 (PDT) Received: from H24V3P4C17.arm.com (usa-sjc-imap-foss1.foss.arm.com [10.121.207.14]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPA id 90B393F66E for ; Mon, 16 Sep 2024 17:04:05 -0700 (PDT) From: Jon Mason To: meta-arm@lists.yoctoproject.org Subject: [PATCH v2 1/3] arm/libts: Patch to fix 6.10 kernel builds breaks Date: Mon, 16 Sep 2024 20:04:02 -0400 Message-Id: <20240917000404.24807-1-jon.mason@arm.com> X-Mailer: git-send-email 2.39.3 (Apple Git-146) MIME-Version: 1.0 List-Id: X-Webhook-Received: from li982-79.members.linode.com [45.33.32.79] by aws-us-west-2-korg-lkml-1.web.codeaurora.org with HTTPS for ; Tue, 17 Sep 2024 00:04:14 -0000 X-Groupsio-URL: https://lists.yoctoproject.org/g/meta-arm/message/6076 The ts-tee driver was upstreamed into the v6.10 kernel. Remove arm-tstee driver package, since the upstream one should be used. optee and arm ffa driver are logging non-fatal errors in dmesg, which is causing the parselogs test to fail. This is due to arm ffa needing givc3. Signed-off-by: Jon Mason --- meta-arm-bsp/conf/machine/fvp-base.conf | 2 - .../conf/machine/qemuarm64-secureboot.conf | 3 - ...parselogs-ignores-qemuarm64-secureboot.txt | 3 + .../arm-tstee/arm-tstee_2.0.0.bb | 23 -- .../linux/files/arm-ffa-transport.cfg | 1 + ...Remove-TEE-driver-external-component.patch | 223 ++++++++++++++++++ .../trusted-services/libts_git.bb | 4 +- 7 files changed, 229 insertions(+), 30 deletions(-) create mode 100644 meta-arm/lib/oeqa/runtime/cases/parselogs-ignores-qemuarm64-secureboot.txt delete mode 100644 meta-arm/recipes-kernel/arm-tstee/arm-tstee_2.0.0.bb create mode 100644 meta-arm/recipes-security/trusted-services/libts/0001-Remove-TEE-driver-external-component.patch diff --git a/meta-arm-bsp/conf/machine/fvp-base.conf b/meta-arm-bsp/conf/machine/fvp-base.conf index 2fc49fc7bfe2..353024e26b72 100644 --- a/meta-arm-bsp/conf/machine/fvp-base.conf +++ b/meta-arm-bsp/conf/machine/fvp-base.conf @@ -23,8 +23,6 @@ PREFERRED_PROVIDER_virtual/kernel ?= "linux-yocto" KERNEL_DTB_NAME = "fvp-base-revc.dtb" KERNEL_DEVICETREE = "arm/${KERNEL_DTB_NAME}" KERNEL_IMAGETYPE = "Image" -#FIXME - Working around arm-tstee not compiling on kernels greater than 6.8 -PREFERRED_VERSION_linux-yocto ?= "6.6.%" EXTRA_IMAGEDEPENDS += "trusted-firmware-a" diff --git a/meta-arm/conf/machine/qemuarm64-secureboot.conf b/meta-arm/conf/machine/qemuarm64-secureboot.conf index cfc6ff7706fb..78a39c03c1bd 100644 --- a/meta-arm/conf/machine/qemuarm64-secureboot.conf +++ b/meta-arm/conf/machine/qemuarm64-secureboot.conf @@ -3,9 +3,6 @@ MACHINEOVERRIDES =. "qemuarm64:" require ${COREBASE}/meta/conf/machine/qemuarm64.conf KMACHINE = "qemuarm64" -#FIXME - Working around arm-tstee not compiling on kernels greater than 6.8 -PREFERRED_VERSION_linux-yocto ?= "6.6.%" -PREFERRED_VERSION_linux-yocto-rt ?= "6.6.%" # secure=on can't ever use KVM, so force it off QEMU_USE_KVM = "" diff --git a/meta-arm/lib/oeqa/runtime/cases/parselogs-ignores-qemuarm64-secureboot.txt b/meta-arm/lib/oeqa/runtime/cases/parselogs-ignores-qemuarm64-secureboot.txt new file mode 100644 index 000000000000..92de01b66a63 --- /dev/null +++ b/meta-arm/lib/oeqa/runtime/cases/parselogs-ignores-qemuarm64-secureboot.txt @@ -0,0 +1,3 @@ +optee: Failed to initialize async notifications: -95 +ARM FF-A: Failed to register driver sched callback -95 +ARM FF-A: Notification setup failed -95, not enabled diff --git a/meta-arm/recipes-kernel/arm-tstee/arm-tstee_2.0.0.bb b/meta-arm/recipes-kernel/arm-tstee/arm-tstee_2.0.0.bb deleted file mode 100644 index 34beac945ffa..000000000000 --- a/meta-arm/recipes-kernel/arm-tstee/arm-tstee_2.0.0.bb +++ /dev/null @@ -1,23 +0,0 @@ -SUMMARY = "A Linux kernel module providing user space access to Trusted Services" -DESCRIPTION = "${SUMMARY}" -LICENSE = "GPL-2.0-only" -LIC_FILES_CHKSUM = "file://COPYING;md5=05e355bbd617507216a836c56cf24983" - -inherit module - -SRC_URI = "git://gitlab.arm.com/linux-arm/linux-trusted-services;protocol=https;branch=main \ - file://Makefile;subdir=git \ - " -S = "${WORKDIR}/git" - -# Tag tee-v2.0.0 -SRCREV = "a2d7349a96c3b3afb44bf1555d53f1c46e45a23d" -UPSTREAM_CHECK_GITTAGREGEX = "^tee-v(?P\d+(\.\d+)+)$" - -COMPATIBLE_HOST = "(arm|aarch64).*-linux" -KERNEL_MODULE_AUTOLOAD += "arm-tstee" - -do_install:append() { - install -d ${D}${includedir} - install -m 0644 ${S}/uapi/arm_tstee.h ${D}${includedir}/ -} diff --git a/meta-arm/recipes-kernel/linux/files/arm-ffa-transport.cfg b/meta-arm/recipes-kernel/linux/files/arm-ffa-transport.cfg index 34de78e8955d..53f19610ccaf 100644 --- a/meta-arm/recipes-kernel/linux/files/arm-ffa-transport.cfg +++ b/meta-arm/recipes-kernel/linux/files/arm-ffa-transport.cfg @@ -1 +1,2 @@ CONFIG_ARM_FFA_TRANSPORT=y +CONFIG_ARM_TSTEE=y diff --git a/meta-arm/recipes-security/trusted-services/libts/0001-Remove-TEE-driver-external-component.patch b/meta-arm/recipes-security/trusted-services/libts/0001-Remove-TEE-driver-external-component.patch new file mode 100644 index 000000000000..79a202294758 --- /dev/null +++ b/meta-arm/recipes-security/trusted-services/libts/0001-Remove-TEE-driver-external-component.patch @@ -0,0 +1,223 @@ +From cc9589c03cb0fcd9c3248b95f05cce1afaa37d0f Mon Sep 17 00:00:00 2001 +From: Balint Dobszay +Date: Thu, 19 Oct 2023 16:35:05 +0200 +Subject: [PATCH] Remove TEE driver external component + +The TSTEE driver has been merged to Linux kernel v6.10, which makes the +out-of-tree version deprecated. Remove the external component that was +downloading it. Also, the in-tree version doesn't have a module version +field defined, so the sanity check for reading the out-of-tree module's +version is removed too. + +Signed-off-by: Balint Dobszay +Change-Id: I57ee44293c5e940ee7fa944d1420ebcba624fc56 +Upstream-Status: Backport +--- + .../rpc/ts_rpc/caller/linux/component.cmake | 6 -- + .../ts_rpc/caller/linux/ts_rpc_caller_linux.c | 56 +++---------------- + .../spm/optee/userspace-programs-on-fvp.rst | 3 +- + docs/quickstart/optee-testing.rst | 1 - + .../LinuxFfaTeeDriver/LinuxFfaTeeDriver.cmake | 54 ------------------ + 5 files changed, 9 insertions(+), 111 deletions(-) + delete mode 100644 external/LinuxFfaTeeDriver/LinuxFfaTeeDriver.cmake + +diff --git a/components/rpc/ts_rpc/caller/linux/component.cmake b/components/rpc/ts_rpc/caller/linux/component.cmake +index c9f439e20da4..f8e4a52fb70c 100644 +--- a/components/rpc/ts_rpc/caller/linux/component.cmake ++++ b/components/rpc/ts_rpc/caller/linux/component.cmake +@@ -8,8 +8,6 @@ if (NOT DEFINED TGT) + message(FATAL_ERROR "mandatory parameter TGT is not defined.") + endif() + +-include(${TS_ROOT}/external/LinuxFfaTeeDriver/LinuxFfaTeeDriver.cmake) +- + set_property(TARGET ${TGT} APPEND PROPERTY PUBLIC_HEADER + "${CMAKE_CURRENT_LIST_DIR}/ts_rpc_caller_linux.h" + ) +@@ -17,7 +15,3 @@ set_property(TARGET ${TGT} APPEND PROPERTY PUBLIC_HEADER + target_sources(${TGT} PRIVATE + "${CMAKE_CURRENT_LIST_DIR}/ts_rpc_caller_linux.c" + ) +- +-target_include_directories(${TGT} PRIVATE +- "${LINUX_FFA_TEE_DRIVER_INCLUDE_DIR}" +- ) +diff --git a/components/rpc/ts_rpc/caller/linux/ts_rpc_caller_linux.c b/components/rpc/ts_rpc/caller/linux/ts_rpc_caller_linux.c +index 7c4606e56f09..3402a9f6ae2b 100644 +--- a/components/rpc/ts_rpc/caller/linux/ts_rpc_caller_linux.c ++++ b/components/rpc/ts_rpc/caller/linux/ts_rpc_caller_linux.c +@@ -6,7 +6,6 @@ + + #include "ts_rpc_caller_linux.h" + +-#include + #include + #include + #include +@@ -24,11 +23,16 @@ + + #define INVALID_SESS_ID 0 + #define MAX_TEE_DEV_NUM 16 +-#define TS_TEE_DRV_REQ_VER_MAJOR 2 +-#define TS_TEE_DRV_REQ_VER_MINOR 0 +-#define TS_TEE_DRV_REQ_VER_PATCH 0 + #define TS_TEE_DRV_INVALID_SHM_ID (0) + ++/* ++ * This define is part of linux/tee.h starting from Linux v6.10 ++ * Let's keep a copy here in case the kernel headers come from an older version ++ */ ++#ifndef TEE_IMPL_ID_TSTEE ++#define TEE_IMPL_ID_TSTEE 3 ++#endif ++ + struct ts_tee_dev { + uint16_t endpoint_id; + char path[16]; +@@ -236,47 +240,6 @@ static rpc_status_t call(void *context, uint16_t opcode, + return RPC_SUCCESS; + } + +-static bool ts_tee_drv_check_version(void) +-{ +- unsigned int major = 0; +- unsigned int minor = 0; +- unsigned int patch = 0; +- FILE *f = NULL; +- int cnt = 0; +- +- f = fopen("/sys/module/arm_tstee/version", "r"); +- if (f) { +- cnt = fscanf(f, "%u.%u.%u", &major, &minor, &patch); +- fclose(f); +- +- if (cnt != 3) { +- printf("error: cannot read TS TEE driver version\n"); +- return false; +- } +- } else { +- printf("error: TS TEE driver not available\n"); +- return false; +- } +- +- if (major != TS_TEE_DRV_REQ_VER_MAJOR) +- goto err; +- +- if (minor < TS_TEE_DRV_REQ_VER_MINOR) +- goto err; +- +- if (minor == TS_TEE_DRV_REQ_VER_MINOR) +- if (patch < TS_TEE_DRV_REQ_VER_PATCH) +- goto err; +- +- return true; +- +-err: +- printf("error: TS TEE driver is v%u.%u.%u but required v%u.%u.%u\n", major, minor, patch, +- TS_TEE_DRV_REQ_VER_MAJOR, TS_TEE_DRV_REQ_VER_MINOR, TS_TEE_DRV_REQ_VER_PATCH); +- +- return false; +-} +- + static void ts_tee_drv_discover(struct ts_tee_dev *ts_tee_devs, size_t count) + { + struct tee_ioctl_version_data vers = { 0 }; +@@ -314,9 +277,6 @@ rpc_status_t ts_rpc_caller_linux_init(struct rpc_caller_interface *rpc_caller) + if (!rpc_caller || rpc_caller->context) + return RPC_ERROR_INVALID_VALUE; + +- if (!ts_tee_drv_check_version()) +- return RPC_ERROR_INTERNAL; +- + context = (struct ts_rpc_caller_linux_context *)calloc( + 1, sizeof(struct ts_rpc_caller_linux_context)); + if (!context) +diff --git a/docs/environments/secure-partitions/spm/optee/userspace-programs-on-fvp.rst b/docs/environments/secure-partitions/spm/optee/userspace-programs-on-fvp.rst +index f81e1dff3264..aeb26fb3462a 100644 +--- a/docs/environments/secure-partitions/spm/optee/userspace-programs-on-fvp.rst ++++ b/docs/environments/secure-partitions/spm/optee/userspace-programs-on-fvp.rst +@@ -59,8 +59,7 @@ Once it boots to the login prompt, log in as root and from the FVP terminal, ent + # Install the shared library and executables + cp -vat /usr out/ts-install/arm-linux/lib out/ts-install/arm-linux/bin + +- # Load the kernel modules +- out/linux-arm-ffa-tee/load_module.sh ++ # Load the kernel module + out/linux-arm-ffa-user/load_module.sh + + # Run the test application +diff --git a/docs/quickstart/optee-testing.rst b/docs/quickstart/optee-testing.rst +index 7eccf7ab9031..9ff2421d5565 100644 +--- a/docs/quickstart/optee-testing.rst ++++ b/docs/quickstart/optee-testing.rst +@@ -47,7 +47,6 @@ Once it boots to the login prompt, log in as root and from the FVP terminal, ent + + cd /mnt/host + cp -vat /usr out/ts-install/arm-linux/lib out/ts-install/arm-linux/bin +- out/linux-arm-ffa-tee/load_module.sh + out/linux-arm-ffa-user/load_module.sh + ts-service-test -v + +diff --git a/external/LinuxFfaTeeDriver/LinuxFfaTeeDriver.cmake b/external/LinuxFfaTeeDriver/LinuxFfaTeeDriver.cmake +deleted file mode 100644 +index da0a5b3def7e..000000000000 +--- a/external/LinuxFfaTeeDriver/LinuxFfaTeeDriver.cmake ++++ /dev/null +@@ -1,54 +0,0 @@ +-#------------------------------------------------------------------------------- +-# Copyright (c) 2020-2023, Arm Limited and Contributors. All rights reserved. +-# +-# SPDX-License-Identifier: BSD-3-Clause +-# +-#------------------------------------------------------------------------------- +- +-# If the driver is already installed, try to find that +-find_path(LINUX_FFA_TEE_DRIVER_INCLUDE_DIR +- NAMES arm_tstee.h +- DOC "Linux FF-A TEE driver include directory" +-) +- +-# If not found, download it +-if(NOT LINUX_FFA_TEE_DRIVER_INCLUDE_DIR) +- set(LINUX_FFA_TEE_DRIVER_URL "https://git.gitlab.arm.com/linux-arm/linux-trusted-services.git" +- CACHE STRING "Linux FF-A TEE driver repository URL") +- +- # Note: the aim of this external component is to make the header file defining the IOCTL API +- # available. Fetching a moving reference is ok as long as API compatibility is guaranteed. +- set(LINUX_FFA_TEE_DRIVER_REFSPEC "origin/tee-v2" +- CACHE STRING "Linux FF-A TEE driver git refspec") +- +- set(LINUX_FFA_TEE_DRIVER_SOURCE_DIR "${CMAKE_CURRENT_BINARY_DIR}/_deps/linux_ffa_tee_driver-src" +- CACHE PATH "Location of Linux TEE driver source.") +- +- if (DEFINED ENV{LINUX_FFA_TEE_DRIVER_SOURCE_DIR}) +- set(LINUX_FFA_TEE_DRIVER_SOURCE_DIR $ENV{LINUX_FFA_TEE_DRIVER_SOURCE_DIR} +- CACHE PATH "Location of Linux TEE driver source." FORCE) +- endif() +- +- set(GIT_OPTIONS +- GIT_REPOSITORY ${LINUX_FFA_TEE_DRIVER_URL} +- GIT_TAG ${LINUX_FFA_TEE_DRIVER_REFSPEC} +- GIT_SHALLOW TRUE +- ) +- include(${TS_ROOT}/tools/cmake/common/LazyFetch.cmake REQUIRED) +- LazyFetch_MakeAvailable( +- DEP_NAME linux_ffa_tee_driver +- FETCH_OPTIONS "${GIT_OPTIONS}" +- SOURCE_DIR ${LINUX_FFA_TEE_DRIVER_SOURCE_DIR} +- ) +- +- find_path(LINUX_FFA_TEE_DRIVER_INCLUDE_DIR +- NAMES arm_tstee.h +- PATHS ${LINUX_FFA_TEE_DRIVER_SOURCE_DIR}/uapi +- NO_DEFAULT_PATH +- REQUIRED +- DOC "Linux FF-A TEE driver include directory" +- ) +-endif() +- +-set_property(DIRECTORY APPEND PROPERTY CMAKE_CONFIGURE_DEPENDS +- "${LINUX_FFA_TEE_DRIVER_INCLUDE_DIR}/arm_tstee.h") +-- +2.39.2 + diff --git a/meta-arm/recipes-security/trusted-services/libts_git.bb b/meta-arm/recipes-security/trusted-services/libts_git.bb index dfcd4bde98e0..635e4769afd4 100644 --- a/meta-arm/recipes-security/trusted-services/libts_git.bb +++ b/meta-arm/recipes-security/trusted-services/libts_git.bb @@ -6,12 +6,12 @@ TS_ENV = "arm-linux" require trusted-services.inc SRC_URI += "file://tee-udev.rules \ + file://0001-Remove-TEE-driver-external-component.patch \ " OECMAKE_SOURCEPATH="${S}/deployments/libts/${TS_ENV}" -DEPENDS += "arm-tstee arm-ffa-user" -RRECOMMENDS:${PN} += "arm-tstee" +DEPENDS += "arm-ffa-user" # Unix group name for dev/tee* ownership. TEE_GROUP_NAME ?= "teeclnt" From patchwork Tue Sep 17 00:04:03 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jon Mason X-Patchwork-Id: 49188 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from aws-us-west-2-korg-lkml-1.web.codeaurora.org (localhost.localdomain [127.0.0.1]) by smtp.lore.kernel.org (Postfix) with ESMTP id 72C03C3ABCE for ; Tue, 17 Sep 2024 00:04:14 +0000 (UTC) Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by mx.groups.io with SMTP id smtpd.web10.9853.1726531446687654889 for ; Mon, 16 Sep 2024 17:04:06 -0700 Authentication-Results: mx.groups.io; dkim=none (message not signed); spf=pass (domain: arm.com, ip: 217.140.110.172, mailfrom: jon.mason@arm.com) Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 8873B11FB; Mon, 16 Sep 2024 17:04:35 -0700 (PDT) Received: from H24V3P4C17.arm.com (usa-sjc-imap-foss1.foss.arm.com [10.121.207.14]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPA id D86013F66E; Mon, 16 Sep 2024 17:04:05 -0700 (PDT) From: Jon Mason To: meta-arm@lists.yoctoproject.org Cc: Bence Balogh Subject: [PATCH v2 2/3] arm-bsp/linux-yocto: corstone1000: bump to v6.10 Date: Mon, 16 Sep 2024 20:04:03 -0400 Message-Id: <20240917000404.24807-2-jon.mason@arm.com> X-Mailer: git-send-email 2.39.3 (Apple Git-146) In-Reply-To: <20240917000404.24807-1-jon.mason@arm.com> References: <20240917000404.24807-1-jon.mason@arm.com> MIME-Version: 1.0 List-Id: X-Webhook-Received: from li982-79.members.linode.com [45.33.32.79] by aws-us-west-2-korg-lkml-1.web.codeaurora.org with HTTPS for ; Tue, 17 Sep 2024 00:04:14 -0000 X-Groupsio-URL: https://lists.yoctoproject.org/g/meta-arm/message/6075 From: Bence Balogh This commit updates the linux-yocto version to the latest availabe one. No additional work was needed to make it work in Corstone-1000. Signed-off-by: Bence Balogh Signed-off-by: Jon Mason --- meta-arm-bsp/conf/machine/include/corstone1000.inc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/meta-arm-bsp/conf/machine/include/corstone1000.inc b/meta-arm-bsp/conf/machine/include/corstone1000.inc index db1880e56a59..d65906362d54 100644 --- a/meta-arm-bsp/conf/machine/include/corstone1000.inc +++ b/meta-arm-bsp/conf/machine/include/corstone1000.inc @@ -34,7 +34,7 @@ IMAGE_CMD:wic[vardeps] += "GRUB_LINUX_APPEND" # Linux kernel PREFERRED_PROVIDER_virtual/kernel ?= "linux-yocto" -PREFERRED_VERSION_linux-yocto ?= "6.6.%" +PREFERRED_VERSION_linux-yocto ?= "6.10.%" KERNEL_IMAGETYPE = "Image" KERNEL_IMAGETYPE:firmware = "Image.gz" # add FF-A support in the kernel From patchwork Tue Sep 17 00:04:04 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jon Mason X-Patchwork-Id: 49189 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from aws-us-west-2-korg-lkml-1.web.codeaurora.org (localhost.localdomain [127.0.0.1]) by smtp.lore.kernel.org (Postfix) with ESMTP id 71B83C3ABCB for ; Tue, 17 Sep 2024 00:04:14 +0000 (UTC) Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by mx.groups.io with SMTP id smtpd.web10.9854.1726531447020746493 for ; Mon, 16 Sep 2024 17:04:07 -0700 Authentication-Results: mx.groups.io; dkim=none (message not signed); spf=pass (domain: arm.com, ip: 217.140.110.172, mailfrom: jon.mason@arm.com) Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id DE3AC12FC; Mon, 16 Sep 2024 17:04:35 -0700 (PDT) Received: from H24V3P4C17.arm.com (usa-sjc-imap-foss1.foss.arm.com [10.121.207.14]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPA id 4385E3F66E; Mon, 16 Sep 2024 17:04:06 -0700 (PDT) From: Jon Mason To: meta-arm@lists.yoctoproject.org Cc: Bence Balogh Subject: [PATCH v2 3/3] arm-bsp/documentation: corstone1000: remove TEE driver load Date: Mon, 16 Sep 2024 20:04:04 -0400 Message-Id: <20240917000404.24807-3-jon.mason@arm.com> X-Mailer: git-send-email 2.39.3 (Apple Git-146) In-Reply-To: <20240917000404.24807-1-jon.mason@arm.com> References: <20240917000404.24807-1-jon.mason@arm.com> MIME-Version: 1.0 List-Id: X-Webhook-Received: from li982-79.members.linode.com [45.33.32.79] by aws-us-west-2-korg-lkml-1.web.codeaurora.org with HTTPS for ; Tue, 17 Sep 2024 00:04:14 -0000 X-Groupsio-URL: https://lists.yoctoproject.org/g/meta-arm/message/6077 From: Bence Balogh The arm-tstee driver was upstreamed to the v6.10 kernel so it doesn't have to be loaded manually. Updated the related parts in the Corstone-1000 user guide. Signed-off-by: Bence Balogh Signed-off-by: Jon Mason --- .../documentation/corstone1000/user-guide.rst | 19 +++++++++---------- 1 file changed, 9 insertions(+), 10 deletions(-) diff --git a/meta-arm-bsp/documentation/corstone1000/user-guide.rst b/meta-arm-bsp/documentation/corstone1000/user-guide.rst index 58231731b918..f397c641c407 100644 --- a/meta-arm-bsp/documentation/corstone1000/user-guide.rst +++ b/meta-arm-bsp/documentation/corstone1000/user-guide.rst @@ -1236,25 +1236,24 @@ When running the tests on the Corstone-1000 FVP, the user should follow the instructions in `Running the software on FVP`_ section to boot Linux in FVP host_terminal_0, and login using the username ``root``. -First, load FF-A TEE kernel module: +The tests use the `arm_tstee` driver to access Trusted Services Secure Partitions from user space. +This driver is included in the Linux Kernel, starting from v6.10. -:: - - insmod /lib/modules/*-yocto-standard/updates/arm-tstee.ko - -Then, check whether the FF-A TEE driver is loaded correctly by using the following command: +Run the following command in the Host terminal (ttyUSB2) to verify that the driver is present: :: - cat /proc/modules | grep arm_tstee + ls /sys/bus/arm_ffa/drivers | grep arm_tstee -The output should be similar to: + +The output should be: :: - arm_tstee 16384 - - Live 0xffffffc000510000 (O) + arm_tstee + -Now, run the PSA API tests in the following order: +Run the PSA API tests in the following order: ::