From patchwork Wed Sep 27 12:00:50 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Marcin Juszkiewicz X-Patchwork-Id: 726700 Delivered-To: patch@linaro.org Received: by 2002:adf:ea87:0:b0:31d:da82:a3b4 with SMTP id s7csp3486212wrm; Wed, 27 Sep 2023 05:02:56 -0700 (PDT) X-Google-Smtp-Source: AGHT+IF25fMkaX1LQuiUiiVtEXQq4NP7RlVO/2DfFLJ2xF+3oqJ+hENTzmqnvckZId74CU9IU5fG X-Received: by 2002:ac8:5713:0:b0:418:110e:6179 with SMTP id 19-20020ac85713000000b00418110e6179mr1966459qtw.1.1695816176319; Wed, 27 Sep 2023 05:02:56 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1695816176; cv=none; d=google.com; s=arc-20160816; b=m0nC4PsoapWZ9SqQvuyExl50FMsnDz6TsNoZgUw5sB1/kW6WdcufImr9Zq+uYRbL7q nQYaxg0rvSthwsNPgVRcRbYRMw6VlDDLuxscDG1MGSn5r+VXUkl4NhtS13L0PPYWxZ48 5DvBTdHxjdxmCQyCLbRPXzHTjKT7CEwPPqX1CtkdJqlKE1NjCDEHC/fNgXarxSvOcRkV yRoXH7ZSzvG1jjUZub/qlkbJJn1bI24AzKJfWJapRsf+EeNwfj7X3r+Ma8MfvsZfbqeB KZ+hDgLHNxq0dv2Ndmi8rrbBha0yt20W/xWpv7wJ9SJJMN+4BcyXCYrog2YHU7Q0NN6/ EbOQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:content-transfer-encoding :mime-version:references:in-reply-to:message-id:date:subject:cc:to :from; bh=DYj28DNQcusd/JOp7quVXdRz/bYodBeoWpZeT+D+0Ds=; fh=a9pXnRicFU9JFo/ksBX40ryG6nFk9S4SZtN74pEc6GU=; b=Esl7wrzxMK+j4cpMPmzzv/xQ3wZaPBuK33kh6kfRxNZh4RD39hS2q+xBKo9gT2dOFM +Q0uMdFCM7+C2Iq0FNRfF0Isg32O/QUWUGdcOGXrrIAlVZrAf7sc/o8i9rsmvEYdaP9Z DG7kprYkJ/dhitvLGG2siJV6GFGwc014k5JrU6Ka5z287sm4PtS5ZlWk+S0JAv6d5WiX VJBMyNbMBoBezgcSUcq++cyHYN7in6jrm0hFV3rjwlOGo9m5AL7pXTccmKp0R0wHmUXE c0sgho43WEZIZWVtFSNRUc+snYmtdogKu4zHcv7HGLZCxjmhIDBSWG0DcACiv/Iigf81 w2Qw== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from lists.gnu.org (lists.gnu.org. [209.51.188.17]) by mx.google.com with ESMTPS id o20-20020a05622a009400b00417cf88ba98si8190203qtw.648.2023.09.27.05.02.56 for (version=TLS1_2 cipher=ECDHE-ECDSA-CHACHA20-POLY1305 bits=256/256); Wed, 27 Sep 2023 05:02:56 -0700 (PDT) Received-SPF: pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; Authentication-Results: mx.google.com; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1qlTEO-0006iO-G8; Wed, 27 Sep 2023 08:01:28 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qlTE4-0006bT-0s; Wed, 27 Sep 2023 08:01:08 -0400 Received: from muminek.juszkiewicz.com.pl ([213.251.184.221]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qlTDy-0006GT-RY; Wed, 27 Sep 2023 08:01:07 -0400 Received: from localhost (localhost [127.0.0.1]) by muminek.juszkiewicz.com.pl (Postfix) with ESMTP id 1695326073E; Wed, 27 Sep 2023 14:00:58 +0200 (CEST) X-Virus-Scanned: Debian amavis at juszkiewicz.com.pl Received: from muminek.juszkiewicz.com.pl ([127.0.0.1]) by localhost (muminek.juszkiewicz.com.pl [127.0.0.1]) (amavis, port 10024) with ESMTP id 2KDpVB5o_f1B; Wed, 27 Sep 2023 14:00:56 +0200 (CEST) Received: from applejack.lan (83.11.3.58.ipv4.supernova.orange.pl [83.11.3.58]) by muminek.juszkiewicz.com.pl (Postfix) with ESMTPSA id 6570226073B; Wed, 27 Sep 2023 14:00:55 +0200 (CEST) From: Marcin Juszkiewicz To: qemu-arm@nongnu.org Cc: qemu-devel@nongnu.org, Beraldo Leal , Wainer dos Santos Moschetta , Leif Lindholm , Peter Maydell , Radoslaw Biernacki , =?utf-8?q?Philippe_Mathieu-Daud?= =?utf-8?q?=C3=A9?= , Cleber Rosa , =?utf-8?q?Alex_Benn=C3=A9e?= , Marcin Juszkiewicz Subject: [PATCH v2 1/1] tests/avocado: update firmware to enable OpenBSD test on sbsa-ref Date: Wed, 27 Sep 2023 14:00:50 +0200 Message-ID: <20230927120050.210187-2-marcin.juszkiewicz@linaro.org> X-Mailer: git-send-email 2.41.0 In-Reply-To: <20230927120050.210187-1-marcin.juszkiewicz@linaro.org> References: <20230927120050.210187-1-marcin.juszkiewicz@linaro.org> MIME-Version: 1.0 Received-SPF: softfail client-ip=213.251.184.221; envelope-from=marcin.juszkiewicz@linaro.org; helo=muminek.juszkiewicz.com.pl X-Spam_score_int: -11 X-Spam_score: -1.2 X-Spam_bar: - X-Spam_report: (-1.2 / 5.0 requ) BAYES_00=-1.9, SPF_HELO_NONE=0.001, SPF_SOFTFAIL=0.665 autolearn=no autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+patch=linaro.org@nongnu.org Sender: qemu-devel-bounces+patch=linaro.org@nongnu.org Update prebuilt firmware images: - Neoverse V1/N2 cpu support - non-secure EL2 virtual timer - XHCI controller in DSDT With those changes we can now run OpenBSD as part of sbsa-ref tests. Signed-off-by: Marcin Juszkiewicz Reviewed-by: Philippe Mathieu-Daudé Tested-by: Philippe Mathieu-Daudé --- tests/avocado/machine_aarch64_sbsaref.py | 68 ++++++++++++++++++++---- 1 file changed, 58 insertions(+), 10 deletions(-) diff --git a/tests/avocado/machine_aarch64_sbsaref.py b/tests/avocado/machine_aarch64_sbsaref.py index a794245e7e..2d683d4f6a 100644 --- a/tests/avocado/machine_aarch64_sbsaref.py +++ b/tests/avocado/machine_aarch64_sbsaref.py @@ -28,33 +28,33 @@ def fetch_firmware(self): """ Flash volumes generated using: - - Fedora GNU Toolchain version 13.1.1 20230511 (Red Hat 13.1.1-2) + - Fedora GNU Toolchain version 13.2.1 20230728 (Red Hat 13.2.1-1) - Trusted Firmware-A - https://github.com/ARM-software/arm-trusted-firmware/tree/c0d8ee38 + https://github.com/ARM-software/arm-trusted-firmware/tree/7c3ff62d - Tianocore EDK II https://github.com/tianocore/edk2/tree/0f9283429dd4 - https://github.com/tianocore/edk2-non-osi/tree/f0bb00937ad6 - https://github.com/tianocore/edk2-platforms/tree/7880b92e2a04 + https://github.com/tianocore/edk2/tree/ad1c0394b177 + https://github.com/tianocore/edk2-platforms/tree/d03a60523a60 """ # Secure BootRom (TF-A code) fs0_xz_url = ( - "https://fileserver.linaro.org/s/HrYMCjP7MEccjRP/" + "https://fileserver.linaro.org/s/rE43RJyTfxPtBkc/" "download/SBSA_FLASH0.fd.xz" ) - fs0_xz_hash = "447eff64a90b84ce47703c6ec41fbfc25befaaea" + fs0_xz_hash = "cdb8e4ffdaaa79292b7b465693f9e5fae6b7062d" tar_xz_path = self.fetch_asset(fs0_xz_url, asset_hash=fs0_xz_hash) archive.extract(tar_xz_path, self.workdir) fs0_path = os.path.join(self.workdir, "SBSA_FLASH0.fd") # Non-secure rom (UEFI and EFI variables) fs1_xz_url = ( - "https://fileserver.linaro.org/s/t8foNnMPz74DZZy/" + "https://fileserver.linaro.org/s/AGWPDXbcqJTKS4R/" "download/SBSA_FLASH1.fd.xz" ) - fs1_xz_hash = "13a9a262953787c7fc5a9155dfaa26e703631e02" + fs1_xz_hash = "411155ae6984334714dff08d5d628178e790c875" tar_xz_path = self.fetch_asset(fs1_xz_url, asset_hash=fs1_xz_hash) archive.extract(tar_xz_path, self.workdir) fs1_path = os.path.join(self.workdir, "SBSA_FLASH1.fd") @@ -144,7 +144,7 @@ def test_sbsaref_alpine_linux_cortex_a57(self): def test_sbsaref_alpine_linux_neoverse_n1(self): """ - :avocado: tags=cpu:max + :avocado: tags=cpu:neoverse-n1 """ self.boot_alpine_linux("neoverse-n1") @@ -152,4 +152,52 @@ def test_sbsaref_alpine_linux_max(self): """ :avocado: tags=cpu:max """ - self.boot_alpine_linux("max,pauth-impdef=on") + self.boot_alpine_linux("max") + + + # This tests the whole boot chain from EFI to Userspace + # We only boot a whole OS for the current top level CPU and GIC + # Other test profiles should use more minimal boots + def boot_openbsd73(self, cpu): + self.fetch_firmware() + + img_url = ( + "https://cdn.openbsd.org/pub/OpenBSD/7.3/arm64/miniroot73.img" + ) + + img_hash = "7fc2c75401d6f01fbfa25f4953f72ad7d7c18650056d30755c44b9c129b707e5" + img_path = self.fetch_asset(img_url, algorithm="sha256", asset_hash=img_hash) + + self.vm.set_console() + self.vm.add_args( + "-cpu", + cpu, + "-drive", + f"file={img_path},format=raw", + "-device", + "virtio-rng-pci,rng=rng0", + "-object", + "rng-random,id=rng0,filename=/dev/urandom", + ) + + self.vm.launch() + wait_for_console_pattern(self, "Welcome to the OpenBSD/arm64 7.3 installation program.") + + def test_sbsaref_openbsd73_cortex_a57(self): + """ + :avocado: tags=cpu:cortex-a57 + """ + self.boot_openbsd73("cortex-a57") + + def test_sbsaref_openbsd73_neoverse_n1(self): + """ + :avocado: tags=cpu:neoverse-n1 + """ + self.boot_openbsd73("neoverse-n1") + + def test_sbsaref_openbsd73_max(self): + """ + :avocado: tags=cpu:max + """ + self.boot_openbsd73("max") +