From patchwork Wed Jun 22 13:36:18 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Peter Hoyes X-Patchwork-Id: 9497 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 C2722C43334 for ; Wed, 22 Jun 2022 13:36:32 +0000 (UTC) Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by mx.groups.io with SMTP id smtpd.web08.7272.1655904991673718048 for ; Wed, 22 Jun 2022 06:36:31 -0700 Authentication-Results: mx.groups.io; dkim=missing; spf=pass (domain: arm.com, ip: 217.140.110.172, mailfrom: peter.hoyes@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 68FCD1477; Wed, 22 Jun 2022 06:36:31 -0700 (PDT) Received: from e125920.arm.com (unknown [10.57.85.44]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 03F793F534; Wed, 22 Jun 2022 06:36:29 -0700 (PDT) From: Peter Hoyes To: meta-arm@lists.yoctoproject.org Cc: diego.sueiro@arm.com, robbie.cao@arm.com, jiamei.xie@arm.com, Peter Hoyes Subject: [PATCH 1/3] arm/fvp-base-r-aem: Upgrade to version 11.18.16 Date: Wed, 22 Jun 2022 14:36:18 +0100 Message-Id: <20220622133620.1524265-1-peter.hoyes@arm.com> X-Mailer: git-send-email 2.25.1 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 ; Wed, 22 Jun 2022 13:36:32 -0000 X-Groupsio-URL: https://lists.yoctoproject.org/g/meta-arm/message/3525 From: Peter Hoyes The new FVP includes the arch in the download filename, so refactor FVP_ARCH in fvp-common.inc to make "Linux64" available in the recipe file. Update version and EULA URL in documentation. Issue-Id: SCM-4388 Signed-off-by: Peter Hoyes Change-Id: I3ddc29cd444b78634086f2aefe4f52799eb937b1 --- meta-arm-bsp/documentation/fvp-baser-aemv8r64.md | 4 ++-- .../recipes-devtools/fvp/fvp-base-r-aem_11.17.21.bb | 10 ---------- .../recipes-devtools/fvp/fvp-base-r-aem_11.18.16.bb | 11 +++++++++++ meta-arm/recipes-devtools/fvp/fvp-common.inc | 6 ++++-- 4 files changed, 17 insertions(+), 14 deletions(-) delete mode 100644 meta-arm/recipes-devtools/fvp/fvp-base-r-aem_11.17.21.bb create mode 100644 meta-arm/recipes-devtools/fvp/fvp-base-r-aem_11.18.16.bb diff --git a/meta-arm-bsp/documentation/fvp-baser-aemv8r64.md b/meta-arm-bsp/documentation/fvp-baser-aemv8r64.md index 4e98e42..26024aa 100644 --- a/meta-arm-bsp/documentation/fvp-baser-aemv8r64.md +++ b/meta-arm-bsp/documentation/fvp-baser-aemv8r64.md @@ -27,7 +27,7 @@ The fvp-baser-aemv8r64 Yocto MACHINE supports the following BSP components, where either a standard or Real-Time Linux kernel (PREEMPT\_RT) can be built and run: - - FVP_Base_AEMv8R: v11.17.21 + - FVP_Base_AEMv8R: v11.18.16 - boot-wrapper-aarch64: provides PSCI support - U-Boot: v2022.01 - provides UEFI services - Linux kernel: linux-yocto-5.15 @@ -107,7 +107,7 @@ For more details on kas, see https://kas.readthedocs.io/. To build the images for the fvp-baser-aemv8r64 machine, you also need to accept the EULA at -https://developer.arm.com/tools-and-software/simulation-models/fixed-virtual-platforms/end-user-license-agreement-for-fixed-virtual-platforms +https://developer.arm.com/downloads/-/arm-ecosystem-fvps/eula by setting the following environment variable: FVP_BASE_R_ARM_EULA_ACCEPT="True" diff --git a/meta-arm/recipes-devtools/fvp/fvp-base-r-aem_11.17.21.bb b/meta-arm/recipes-devtools/fvp/fvp-base-r-aem_11.17.21.bb deleted file mode 100644 index 06bc370..0000000 --- a/meta-arm/recipes-devtools/fvp/fvp-base-r-aem_11.17.21.bb +++ /dev/null @@ -1,10 +0,0 @@ -require fvp-envelope.inc - -SUMMARY = "Arm Fixed Virtual Platform - Armv8-R Base Architecture Envelope Model FVP" -LIC_FILES_CHKSUM = "file://license_terms/license_agreement.txt;md5=1a33828e132ba71861c11688dbb0bd16 \ - file://license_terms/third_party_licenses.txt;md5=41029e71051b1c786bae3112a29905a7" - -SRC_URI = "https://developer.arm.com/-/media/Files/downloads/ecosystem-models/${MODEL_CODE}_${PV_URL}.tgz;subdir=${BP}" -SRC_URI[sha256sum] = "483ec3c2c6569e3e7e0c4c46329662c0d19475dee8e8947c24fa3de4b00da488" - -MODEL_CODE = "FVP_Base_AEMv8R" diff --git a/meta-arm/recipes-devtools/fvp/fvp-base-r-aem_11.18.16.bb b/meta-arm/recipes-devtools/fvp/fvp-base-r-aem_11.18.16.bb new file mode 100644 index 0000000..8885189 --- /dev/null +++ b/meta-arm/recipes-devtools/fvp/fvp-base-r-aem_11.18.16.bb @@ -0,0 +1,11 @@ +require fvp-envelope.inc + +SUMMARY = "Arm Fixed Virtual Platform - Armv8-R Base Architecture Envelope Model FVP" +LIC_FILES_CHKSUM = "file://license_terms/license_agreement.txt;md5=1a33828e132ba71861c11688dbb0bd16 \ + file://license_terms/third_party_licenses/third_party_licenses.txt;md5=34a1ba318d745f05e6197def68ea5411 \ + file://license_terms/third_party_licenses/arm_license_management_utilities/third_party_licenses.txt;md5=2e53bda6ff2db4c35d69944b93926c9f" + +SRC_URI = "https://developer.arm.com/-/media/Files/downloads/ecosystem-models/${MODEL_CODE}_${PV_URL}_${FVP_ARCH}.tgz;subdir=${BP}" +SRC_URI[sha256sum] = "a7a5ee0b7f3b84a2e98e136a6f3ab648e4b6b5ad365186a397595f3f7c69f558" + +MODEL_CODE = "FVP_Base_AEMv8R" diff --git a/meta-arm/recipes-devtools/fvp/fvp-common.inc b/meta-arm/recipes-devtools/fvp/fvp-common.inc index f7cdca8..12c933d 100644 --- a/meta-arm/recipes-devtools/fvp/fvp-common.inc +++ b/meta-arm/recipes-devtools/fvp/fvp-common.inc @@ -8,8 +8,10 @@ LICENSE = "Proprietary & Apache-2.0 & Python-2.0 & GPL-3.0-with-GCC-exception & COMPATIBLE_HOST = '(x86_64|i.86).*-linux' +# The architecture-specific download filename suffix +FVP_ARCH = "Linux64" # The architecture-specific directory the binaries are installed under -FVP_ARCH = "Linux64_GCC-*" +FVP_ARCH_DIR = "${FVP_ARCH}_GCC-*" def get_real_pv(d): # FVP versions are like 11.12_43 @@ -26,7 +28,7 @@ FVPDIR = "${libdir}/fvp/${BPN}" # Used in do_install to create symlinks in $bindir to $FVPDIR fvp_link_binaries() { - DIR="${D}${FVPDIR}/models/${FVP_ARCH}" + DIR="${D}${FVPDIR}/models/${FVP_ARCH_DIR}" stat $DIR/FVP_* >/dev/null 2>&1 || bbfatal Cannot find FVP binaries in $DIR From patchwork Wed Jun 22 13:36:19 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Peter Hoyes X-Patchwork-Id: 9498 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 A8964C433EF for ; Wed, 22 Jun 2022 13:36:42 +0000 (UTC) Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by mx.groups.io with SMTP id smtpd.web10.7286.1655904996245197618 for ; Wed, 22 Jun 2022 06:36:36 -0700 Authentication-Results: mx.groups.io; dkim=missing; spf=pass (domain: arm.com, ip: 217.140.110.172, mailfrom: peter.hoyes@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 081951477; Wed, 22 Jun 2022 06:36:36 -0700 (PDT) Received: from e125920.arm.com (unknown [10.57.85.44]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 9CCBE3F534; Wed, 22 Jun 2022 06:36:34 -0700 (PDT) From: Peter Hoyes To: meta-arm@lists.yoctoproject.org Cc: diego.sueiro@arm.com, robbie.cao@arm.com, jiamei.xie@arm.com, Peter Hoyes Subject: [PATCH 2/3] arm-bsp/docs: Update fvp-baser-aemv8r64 U-Boot version to 2022.04 Date: Wed, 22 Jun 2022 14:36:19 +0100 Message-Id: <20220622133620.1524265-2-peter.hoyes@arm.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20220622133620.1524265-1-peter.hoyes@arm.com> References: <20220622133620.1524265-1-peter.hoyes@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 ; Wed, 22 Jun 2022 13:36:42 -0000 X-Groupsio-URL: https://lists.yoctoproject.org/g/meta-arm/message/3526 From: Peter Hoyes Issue-Id: SCM-4388 Signed-off-by: Peter Hoyes Change-Id: Id75f5fd56c04039da3ff976c85776b5e1706939a --- meta-arm-bsp/documentation/fvp-baser-aemv8r64.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/meta-arm-bsp/documentation/fvp-baser-aemv8r64.md b/meta-arm-bsp/documentation/fvp-baser-aemv8r64.md index 26024aa..6986afd 100644 --- a/meta-arm-bsp/documentation/fvp-baser-aemv8r64.md +++ b/meta-arm-bsp/documentation/fvp-baser-aemv8r64.md @@ -29,7 +29,7 @@ and run: - FVP_Base_AEMv8R: v11.18.16 - boot-wrapper-aarch64: provides PSCI support - - U-Boot: v2022.01 - provides UEFI services + - U-Boot: v2022.04 - provides UEFI services - Linux kernel: linux-yocto-5.15 - Linux kernel with PREEMPT\_RT support: linux-yocto-rt-5.15 From patchwork Wed Jun 22 13:36:20 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Peter Hoyes X-Patchwork-Id: 9499 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 AE4C0C43334 for ; Wed, 22 Jun 2022 13:36:42 +0000 (UTC) Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by mx.groups.io with SMTP id smtpd.web08.7274.1655905001058210609 for ; Wed, 22 Jun 2022 06:36:41 -0700 Authentication-Results: mx.groups.io; dkim=missing; spf=pass (domain: arm.com, ip: 217.140.110.172, mailfrom: peter.hoyes@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 B518E13D5; Wed, 22 Jun 2022 06:36:40 -0700 (PDT) Received: from e125920.arm.com (unknown [10.57.85.44]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 4EB9B3F534; Wed, 22 Jun 2022 06:36:39 -0700 (PDT) From: Peter Hoyes To: meta-arm@lists.yoctoproject.org Cc: diego.sueiro@arm.com, robbie.cao@arm.com, jiamei.xie@arm.com Subject: [PATCH 3/3] arm-bsp/fvp-baser-aemv8r64: Use secure hypervisor physical timer in EL2 Date: Wed, 22 Jun 2022 14:36:20 +0100 Message-Id: <20220622133620.1524265-3-peter.hoyes@arm.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20220622133620.1524265-1-peter.hoyes@arm.com> References: <20220622133620.1524265-1-peter.hoyes@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 ; Wed, 22 Jun 2022 13:36:42 -0000 X-Groupsio-URL: https://lists.yoctoproject.org/g/meta-arm/message/3527 From: Jiamei Xie Arm generic timer provides different timers for different exception levels and different secure states. Because Armv8-R AArch64 has secure state only, the valid timer for hypervisor in EL2 is secure hypervisor physical timer. But for platform fvp-baser-aemv8r64, before FVP 11.18, the secure hypervisor physical timer could not work well in EL2, so we had been using Non-secure physical timer in EL2 for hypervisor as a workaround. Since secure hypervisor physical timer issue has been fixed from FVP 11.18, we can use this correct timer in EL2 for hypervisor now. So we update the device tree timer node to use secure hypervisor physical timer interrupt for hypervisor. About the interrupt assignments of FVP, please refer to https://developer.arm.com/documentation/100964/latest/Base-Platform/Base---interrupt-assignments Issue-Id: SCM-4596 Signed-off-by: Jiamei Xie Change-Id: I9d4b9f4e0ed14c6c1567269c83696ceb9ff84ac8 --- .../linux/files/fvp-baser-aemv8r64/fvp-baser-aemv8r64.dts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/meta-arm-bsp/recipes-kernel/linux/files/fvp-baser-aemv8r64/fvp-baser-aemv8r64.dts b/meta-arm-bsp/recipes-kernel/linux/files/fvp-baser-aemv8r64/fvp-baser-aemv8r64.dts index 1a4e501..6911a59 100644 --- a/meta-arm-bsp/recipes-kernel/linux/files/fvp-baser-aemv8r64/fvp-baser-aemv8r64.dts +++ b/meta-arm-bsp/recipes-kernel/linux/files/fvp-baser-aemv8r64/fvp-baser-aemv8r64.dts @@ -186,7 +186,7 @@ interrupts = <0x1 13 0xff08>, <0x1 14 0xff08>, <0x1 11 0xff08>, - <0x1 10 0xff08>; + <0x1 4 0xff08>; clock-frequency = <100000000>; };