From nobody Sat Nov 15 23:41:32 2025 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass header.i=me@linux.beauty; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; arc=pass (i=1 dmarc=pass fromdomain=linux.beauty) ARC-Seal: i=2; a=rsa-sha256; t=1745327368; cv=pass; d=zohomail.com; s=zohoarc; b=U4ZjGRlOJZTLG6M13xAVzRZDIk8nGuZ3uVb2oTAsZ744bMyxwRDEp9vb8Kxt7MwJ+SOP0Rs/nCUpZmO6zD3UxddDOaR5JIkx/OThevLce6nM80yv8ZHmyzxdtEjHd6ny1lBBwpY6NuNjKHIUlMTggUFUNYXyy8HhexCDn12uNIQ= ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1745327368; h=Content-Type:Content-Transfer-Encoding:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To:Cc; bh=a9HKWYzbKhJk4qFN+8oVwSiTpsecKA5fkKccQIdUnz8=; b=Y8o09ew9knYoBfKJ/GMZoTekNXkVwH17GEV67vzEiXSlAJArAP7J8NelLBzDcaRyj0g96ZEPBXKYSrLsnLHhcMjiqXTHEwmP0JKvyc6WwK8q2OBrkObEGoalUU6jj8UDw26tKMkxX7duyp6ZEEK+v0xgG5ykb2wz5Do9c5V2Cak= ARC-Authentication-Results: i=2; mx.zohomail.com; dkim=pass header.i=me@linux.beauty; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; arc=pass (i=1 dmarc=pass fromdomain=linux.beauty) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1745327368632146.32955645855213; Tue, 22 Apr 2025 06:09:28 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1u7DLj-0004Ea-At; Tue, 22 Apr 2025 09:07:43 -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 1u7CNi-0008Bp-Sb; Tue, 22 Apr 2025 08:05:43 -0400 Received: from sender4-op-o12.zoho.com ([136.143.188.12]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1u7CNg-0002gX-G5; Tue, 22 Apr 2025 08:05:42 -0400 Received: from mail.zoho.com by mx.zohomail.com with SMTP id 1745323513788952.3340891978004; Tue, 22 Apr 2025 05:05:13 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1745323516; cv=none; d=zohomail.com; s=zohoarc; b=a9OPHnVQp39RcTCyqL3IuqMeU89cnqLCsZMhesRMs70NgUTl4Vq7/FaUtpXjqBIiwI+HdWnAA9ciwNDyfdNl2KExZ7OtRtcKgv5qoxbk6P0Py22b1qOXz8isc1X/NRSvQtJLVqiXVqKVrfIf8NpQP0VAJoMHw3Tu9+0BOkJo82o= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1745323516; h=Content-Type:Content-Transfer-Encoding:Date:Date:From:From:In-Reply-To:MIME-Version:Message-ID:References:Subject:Subject:To:To:Message-Id:Reply-To:Cc; bh=a9HKWYzbKhJk4qFN+8oVwSiTpsecKA5fkKccQIdUnz8=; b=CM5iXclnClAD4Prbw78HMBax90gCu6QVYq/pY9ano/ZV67pYQzqE8j1o6kUel7E/OpBpqki2ekOROFCznJpEqqbkwJ7ZegqGAxBfN15ikPlbwTA1P3SmJp+tfHBbZw3rhUhsJdK5SFNDP/1yNr786tgFF3QM5zRqAlXihS6zPWI= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass header.i=linux.beauty; spf=pass smtp.mailfrom=me@linux.beauty; dmarc=pass header.from= DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; t=1745323516; s=zmail; d=linux.beauty; i=me@linux.beauty; h=Date:Date:From:From:To:To:Message-ID:In-Reply-To:References:Subject:Subject:MIME-Version:Content-Type:Content-Transfer-Encoding:Message-Id:Reply-To:Cc; bh=a9HKWYzbKhJk4qFN+8oVwSiTpsecKA5fkKccQIdUnz8=; b=VaEjJR0Jn6u65cxaqoKj5zomRrRWtKxiD2ULq6lPsuZH6KjmqpDIqIs0E/gtnU0r b8/5ffWyJOhXRA/wyVK9wbkjYkvNzM4kopipPyWlMOowtfObjiTiLBvg9Za9c8oIuhy HmJR2YAnSObuxfSxWryXf4ek3JGCv0NJ8BEEhURU= Date: Tue, 22 Apr 2025 20:05:13 +0800 From: Li Chen To: "Peter Maydell" , "Shannon Zhao" , "Michael S. Tsirkin" , "Igor Mammedov" , "Ani Sinha" , "Eduardo Habkost" , "Marcel Apfelbaum" , =?UTF-8?Q?=22Philippe_Mathieu-Daud=C3=A9=22?= , "Yanan Wang" , "Zhao Liu" , "Song Gao" , "Jiaxun Yang" , "Sunil V L" , "Palmer Dabbelt" , "Alistair Francis" , "Weiwei Li" , "qemu-arm" , "qemu-devel" , "qemu-riscv" Message-ID: <1965d6357a1.dfa9d35b911644.778874035603636753@linux.beauty> In-Reply-To: <1965d621e25.fafa759e911037.825810937022699867@linux.beauty> References: <1965d621e25.fafa759e911037.825810937022699867@linux.beauty> Subject: [PATCH V2 1/3] acpi: Add machine option to disable SPCR table MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Importance: Medium User-Agent: Zoho Mail X-Mailer: Zoho Mail Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=136.143.188.12; envelope-from=me@linux.beauty; helo=sender4-op-o12.zoho.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_VALIDITY_CERTIFIED_BLOCKED=0.001, RCVD_IN_VALIDITY_RPBL_BLOCKED=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-Mailman-Approved-At: Tue, 22 Apr 2025 09:07:38 -0400 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+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity me@linux.beauty) X-ZM-MESSAGEID: 1745327370039019000 Content-Type: text/plain; charset="utf-8" From: Li Chen The ACPI SPCR (Serial Port Console Redirection) table allows firmware to specify a preferred serial console device to the operating system. On ARM64 systems, Linux by default respects this table: even if the kernel command line does not include a hardware serial console (e.g., "console=3DttyAMA0"), the kernel still register the serial device referenced by SPCR as a printk console. While this behavior is standard-compliant, it can lead to situations where guest console behavior is influenced by platform firmware rather than user-specified configuration. To make guest console behavior more predictable and under user control, this patch introduces a machine option to explicitly disable SPCR table exposure: -machine spcr=3Doff By default, the option is enabled (spcr=3Don), preserving existing behavior. When disabled, QEMU will omit the SPCR table from the guest's ACPI namespace, ensuring that only consoles explicitly declared in the kernel command line are registered. Signed-off-by: Li Chen Reviewed-by: Bibo Mao Acked-by: Michael S. Tsirkin Reviewed-by: Gavin Shan --- Changes since V1: add Reviewed-by and Acked-by hw/arm/virt-acpi-build.c | 5 ++++- hw/core/machine.c | 22 ++++++++++++++++++++++ hw/loongarch/virt-acpi-build.c | 4 +++- hw/riscv/virt-acpi-build.c | 5 ++++- include/hw/boards.h | 1 + qemu-options.hx | 5 +++++ 6 files changed, 39 insertions(+), 3 deletions(-) diff --git a/hw/arm/virt-acpi-build.c b/hw/arm/virt-acpi-build.c index 3ac8f8e178..f25c3b26ce 100644 --- a/hw/arm/virt-acpi-build.c +++ b/hw/arm/virt-acpi-build.c @@ -940,7 +940,10 @@ void virt_acpi_build(VirtMachineState *vms, AcpiBuildT= ables *tables) } =20 acpi_add_table(table_offsets, tables_blob); - spcr_setup(tables_blob, tables->linker, vms); + + if (ms->enable_spcr) { + spcr_setup(tables_blob, tables->linker, vms); + } =20 acpi_add_table(table_offsets, tables_blob); build_dbg2(tables_blob, tables->linker, vms); diff --git a/hw/core/machine.c b/hw/core/machine.c index 63c6ef93d2..d56f44f4e8 100644 --- a/hw/core/machine.c +++ b/hw/core/machine.c @@ -590,6 +590,20 @@ static void machine_set_nvdimm(Object *obj, bool value= , Error **errp) ms->nvdimms_state->is_enabled =3D value; } =20 +static bool machine_get_spcr(Object *obj, Error **errp) +{ + MachineState *ms =3D MACHINE(obj); + + return ms->enable_spcr; +} + +static void machine_set_spcr(Object *obj, bool value, Error **errp) +{ + MachineState *ms =3D MACHINE(obj); + + ms->enable_spcr =3D value; +} + static bool machine_get_hmat(Object *obj, Error **errp) { MachineState *ms =3D MACHINE(obj); @@ -1294,6 +1308,14 @@ static void machine_initfn(Object *obj) "Table (HMAT)"); } =20 + /* SPCR */ + ms->enable_spcr =3D true; + object_property_add_bool(obj, "spcr", machine_get_spcr, machine_set_sp= cr); + object_property_set_description(obj, "spcr", + "Set on/off to enable/disable " + "ACPI Serial Port Console Redirection " + "Table (spcr)"); + /* default to mc->default_cpus */ ms->smp.cpus =3D mc->default_cpus; ms->smp.max_cpus =3D mc->default_cpus; diff --git a/hw/loongarch/virt-acpi-build.c b/hw/loongarch/virt-acpi-build.c index fced6c445a..0e437bcf25 100644 --- a/hw/loongarch/virt-acpi-build.c +++ b/hw/loongarch/virt-acpi-build.c @@ -557,7 +557,9 @@ static void acpi_build(AcpiBuildTables *tables, Machine= State *machine) acpi_add_table(table_offsets, tables_blob); build_srat(tables_blob, tables->linker, machine); acpi_add_table(table_offsets, tables_blob); - spcr_setup(tables_blob, tables->linker, machine); + + if (machine->enable_spcr) + spcr_setup(tables_blob, tables->linker, machine); =20 if (machine->numa_state->num_nodes) { if (machine->numa_state->have_numa_distance) { diff --git a/hw/riscv/virt-acpi-build.c b/hw/riscv/virt-acpi-build.c index 1ad6800508..7f6d221c63 100644 --- a/hw/riscv/virt-acpi-build.c +++ b/hw/riscv/virt-acpi-build.c @@ -680,7 +680,10 @@ static void virt_acpi_build(RISCVVirtState *s, AcpiBui= ldTables *tables) build_rhct(tables_blob, tables->linker, s); =20 acpi_add_table(table_offsets, tables_blob); - spcr_setup(tables_blob, tables->linker, s); + + if (ms->enable_spcr) { + spcr_setup(tables_blob, tables->linker, s); + } =20 acpi_add_table(table_offsets, tables_blob); { diff --git a/include/hw/boards.h b/include/hw/boards.h index f22b2e7fc7..cdf2791a50 100644 --- a/include/hw/boards.h +++ b/include/hw/boards.h @@ -444,6 +444,7 @@ struct MachineState { SmpCache smp_cache; struct NVDIMMState *nvdimms_state; struct NumaState *numa_state; + bool enable_spcr; }; =20 /* diff --git a/qemu-options.hx b/qemu-options.hx index dc694a99a3..953680595f 100644 --- a/qemu-options.hx +++ b/qemu-options.hx @@ -38,6 +38,7 @@ DEF("machine", HAS_ARG, QEMU_OPTION_machine, \ " nvdimm=3Don|off controls NVDIMM support (default=3Dof= f)\n" " memory-encryption=3D@var{} memory encryption object t= o use (default=3Dnone)\n" " hmat=3Don|off controls ACPI HMAT support (default=3Do= ff)\n" + " spcr=3Don|off controls ACPI SPCR support (default=3Do= n)\n" #ifdef CONFIG_POSIX " aux-ram-share=3Don|off allocate auxiliary guest RAM a= s shared (default: off)\n" #endif @@ -105,6 +106,10 @@ SRST Enables or disables ACPI Heterogeneous Memory Attribute Table (HMAT) support. The default is off. =20 + ``spcr=3Don|off`` + Enables or disables ACPI Serial Port Console Redirection Table + (SPCR) support. The default is on. + ``aux-ram-share=3Don|off`` Allocate auxiliary guest RAM as an anonymous file that is shareable with an external process. This option applies to --=20 2.49.0 From nobody Sat Nov 15 23:41:32 2025 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass header.i=me@linux.beauty; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; arc=pass (i=1 dmarc=pass fromdomain=linux.beauty) ARC-Seal: i=2; a=rsa-sha256; t=1745327370; cv=pass; d=zohomail.com; s=zohoarc; b=MWPjl8i5KnhHmRBZWN6pkHHuXilNxk3Yj9MNr/sFhHU1dHsPbSPwZVzw1RAzySaC5GU9wM2R78ymd4hv1Y+568XawFI442Yv4oM4uvpHRsS02V/nL63WRrZ3rmTd4OYfhJO5y9WX8YEQkzWkQ2cW42Ru7c966WXlYqN1hFS/tKw= ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1745327370; h=Content-Type:Content-Transfer-Encoding:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To:Cc; bh=2c0O9T1s6X8/ZTemOXWayC8UqGgBEItGWgmlUlE7g6Y=; b=MpdFIg30PKtkVkfZwJeYEXn26RnyQ7ry1A/5F5aSkZYNR84ACUmlxXuziDED8JuL6HsjeNF5bKq+BU+P7WtAJi0lmw0yYYHgH7jxudOIf1OZ3DbwlKb+i6riipsDn5m68FcV0aPRHUXHo7054/UVTAth1b9hKdxBOwEIr1cWJSg= ARC-Authentication-Results: i=2; mx.zohomail.com; dkim=pass header.i=me@linux.beauty; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; arc=pass (i=1 dmarc=pass fromdomain=linux.beauty) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1745327369991546.7567640647217; Tue, 22 Apr 2025 06:09:29 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1u7DLi-0004DS-CG; Tue, 22 Apr 2025 09:07:42 -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 1u7COt-0000EC-Mk; Tue, 22 Apr 2025 08:06:57 -0400 Received: from sender3-op-o12.zoho.com ([136.143.184.12]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1u7COp-0002mZ-Ib; Tue, 22 Apr 2025 08:06:54 -0400 Received: from mail.zoho.com by mx.zohomail.com with SMTP id 1745323581073534.0804907669417; Tue, 22 Apr 2025 05:06:21 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1745323582; cv=none; d=zohomail.com; s=zohoarc; b=CqgUqqTIGnpDkOAixwAJdrt0dBVbevIOgoiT6TzUD4F1yLfI146Nph+Xz5HB+0jF7OXbUtTd/b2yt+Lnj4Z2qILfy348DAmuiaC/CEhmYs6vp66rub8LCHPX/lnDqWl5B8llV8M3U1xYo3w1P9qTkv8e+UGFpBh+/kr7DTTkYjQ= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1745323582; h=Content-Type:Content-Transfer-Encoding:Date:Date:From:From:In-Reply-To:MIME-Version:Message-ID:References:Subject:Subject:To:To:Message-Id:Reply-To:Cc; bh=2c0O9T1s6X8/ZTemOXWayC8UqGgBEItGWgmlUlE7g6Y=; b=nT+jbnnl1DiH8C3uLG4+ImfdhHyc6bp8pbO7Vy/UM1bcVs8qnJyXiAAu1FqFGHrtYPyjgitILYJSWIbc2EIu8DnvhG5bDGFfDgd/SqwIzvJeFfM+lnOi54HtveaSXXQVBJy19kaP5PCgCN89ZzMPPOH8EUeZnTuSxO78HzSZ2IM= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass header.i=linux.beauty; spf=pass smtp.mailfrom=me@linux.beauty; dmarc=pass header.from= DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; t=1745323582; s=zmail; d=linux.beauty; i=me@linux.beauty; h=Date:Date:From:From:To:To:Message-ID:In-Reply-To:References:Subject:Subject:MIME-Version:Content-Type:Content-Transfer-Encoding:Message-Id:Reply-To:Cc; bh=2c0O9T1s6X8/ZTemOXWayC8UqGgBEItGWgmlUlE7g6Y=; b=ctqEAoQ8LMpLvHzgPZsQERzz9n8WacvHTYHnEAj+iuf9cx6wAm4v5gK9YxLpRMA8 VCoxfs9oJ8RJoQ8PNbfHSg7oLRKUxFDp53+itQEqEv5peFlXidxFLoKk7vgvpu3eHV0 Llo/QIENnordzV0mQOL6ZU+C4yrbmVDRiA48xRbk= Date: Tue, 22 Apr 2025 20:06:21 +0800 From: Li Chen To: "Peter Maydell" , "Shannon Zhao" , "Michael S. Tsirkin" , "Igor Mammedov" , "Ani Sinha" , "Eduardo Habkost" , "Marcel Apfelbaum" , =?UTF-8?Q?=22Philippe_Mathieu-Daud=C3=A9=22?= , "Yanan Wang" , "Zhao Liu" , "Song Gao" , "Jiaxun Yang" , "Sunil V L" , "Palmer Dabbelt" , "Alistair Francis" , "Weiwei Li" , "qemu-arm" , "qemu-devel" , "qemu-riscv" Message-ID: <1965d645e78.faddb8f4912124.7439555839695048949@linux.beauty> In-Reply-To: <1965d621e25.fafa759e911037.825810937022699867@linux.beauty> References: <1965d621e25.fafa759e911037.825810937022699867@linux.beauty> Subject: [PATCH V2 2/3] tests/qtest/bios-tables-test: Add test for disabling SPCR on AArch64 MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Importance: Medium User-Agent: Zoho Mail X-Mailer: Zoho Mail Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=136.143.184.12; envelope-from=me@linux.beauty; helo=sender3-op-o12.zoho.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_VALIDITY_CERTIFIED_BLOCKED=0.001, RCVD_IN_VALIDITY_RPBL_BLOCKED=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-Mailman-Approved-At: Tue, 22 Apr 2025 09:07:38 -0400 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+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity me@linux.beauty) X-ZM-MESSAGEID: 1745327373079019100 Content-Type: text/plain; charset="utf-8" From: Li Chen Add ACPI SPCR table test case for ARM when SPCR was off. Signed-off-by: Li Chen --- tests/qtest/bios-tables-test.c | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/tests/qtest/bios-tables-test.c b/tests/qtest/bios-tables-test.c index 0a333ec435..d2a1aa7fb3 100644 --- a/tests/qtest/bios-tables-test.c +++ b/tests/qtest/bios-tables-test.c @@ -1789,6 +1789,24 @@ static void test_acpi_aarch64_virt_tcg_pxb(void) free_test_data(&data); } =20 +static void test_acpi_aarch64_virt_tcg_acpi_spcr(void) +{ + test_data data =3D { + .machine =3D "virt", + .arch =3D "aarch64", + .tcg_only =3D true, + .uefi_fl1 =3D "pc-bios/edk2-aarch64-code.fd", + .uefi_fl2 =3D "pc-bios/edk2-arm-vars.fd", + .cd =3D "tests/data/uefi-boot-images/bios-tables-test.aarch64.iso.= qcow2", + .ram_start =3D 0x40000000ULL, + .scan_len =3D 128ULL * 1024 * 1024, + .variant =3D ".acpispcr", + }; + + test_acpi_one("-cpu cortex-a57 " + " -machine spcr=3Doff", &data); + free_test_data(&data); +} static void test_acpi_tcg_acpi_hmat(const char *machine, const char *arch) { test_data data =3D {}; @@ -2583,6 +2601,8 @@ int main(int argc, char *argv[]) qtest_add_func("acpi/virt/pxb", test_acpi_aarch64_virt_tcg_pxb= ); qtest_add_func("acpi/virt/oem-fields", test_acpi_aarch64_virt_oem_fields); + qtest_add_func("acpi/virt/acpispcr", + test_acpi_aarch64_virt_tcg_acpi_spcr); if (qtest_has_device("virtio-iommu-pci")) { qtest_add_func("acpi/virt/viot", test_acpi_aarch64_virt_vi= ot); } --=20 2.49.0 From nobody Sat Nov 15 23:41:32 2025 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass header.i=me@linux.beauty; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; arc=pass (i=1 dmarc=pass fromdomain=linux.beauty) ARC-Seal: i=2; a=rsa-sha256; t=1745327336; cv=pass; d=zohomail.com; s=zohoarc; b=CJgXg0thHWmT3iD083IiBp0qls8p/9r59d3g1IDKlooMJExMki5Yv8yKppy0kv3GeT8Fg7tGRgiAzDici5UFNC/JKFkCh+8olbo2RxzCs9xKp1BP7AqQbe/900eoSAP4YXhw/7slqbGzZ73lTE0bXKYbpLLZtzQ03F36/D9IFxc= ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1745327336; h=Content-Type:Content-Transfer-Encoding:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To:Cc; bh=/stvQ7CKfZG2qrLmD8V83vEdkR/vmhNKv8wtTQoJZjI=; b=bf7rlBoXrRZN+9D8VztwJkIieThFOd/wK6siPc0Fh7zul39QJblJ00+f1qzqcoEHQpQws4QMTXIVZ/4TZ0bFHdqPJ4Rk9YcMlGi06iFJ4dLu4OtOsbs97WAPvGRAPzxakcEVdeu9x571jR51X72Xcyh0V5olIHA9VCzvFZ3NySQ= ARC-Authentication-Results: i=2; mx.zohomail.com; dkim=pass header.i=me@linux.beauty; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; arc=pass (i=1 dmarc=pass fromdomain=linux.beauty) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1745327336939637.015989796677; Tue, 22 Apr 2025 06:08:56 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1u7DLk-0004FG-IO; Tue, 22 Apr 2025 09:07:44 -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 1u7CPi-0000SK-7f; Tue, 22 Apr 2025 08:07:46 -0400 Received: from sender4-op-o12.zoho.com ([136.143.188.12]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1u7CPe-0002sD-1m; Tue, 22 Apr 2025 08:07:44 -0400 Received: from mail.zoho.com by mx.zohomail.com with SMTP id 1745323639301266.73560620235014; Tue, 22 Apr 2025 05:07:19 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1745323641; cv=none; d=zohomail.com; s=zohoarc; b=fmFbhfJyfECqQmrJkiLYGUNQb0nQlMks/6J04uHDP3zA32Xs1un+ZH7kh9sFwZng6Joj06shogwSh9S4lYnWFR0OCeSzEljnuqpAMP4QxPMg1yrC8ImmQy4RqYGXb47UqNAA4ZSd6lurblvRx46F1vzMHcZtjP7cCc1ZJGTCXl8= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1745323641; h=Content-Type:Content-Transfer-Encoding:Date:Date:From:From:In-Reply-To:MIME-Version:Message-ID:References:Subject:Subject:To:To:Message-Id:Reply-To:Cc; bh=/stvQ7CKfZG2qrLmD8V83vEdkR/vmhNKv8wtTQoJZjI=; b=j1PSDk2B9mOBMgTROQTmcR0vOzLXUnSjHhq6fXBNycUdbPfjOy0LvNz3nTgdV+DGEAoUWmTGD4wE22BRPMYwcVgKozYYoGtpHDbVuXVLtMFN1KO8KCKcDrCGy0c+dY9eElLfAgTBvwrjrThpX4hNi5DpN1DiXbvhA12BQ3mOM8Y= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass header.i=linux.beauty; spf=pass smtp.mailfrom=me@linux.beauty; dmarc=pass header.from= DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; t=1745323641; s=zmail; d=linux.beauty; i=me@linux.beauty; h=Date:Date:From:From:To:To:Message-ID:In-Reply-To:References:Subject:Subject:MIME-Version:Content-Type:Content-Transfer-Encoding:Message-Id:Reply-To:Cc; bh=/stvQ7CKfZG2qrLmD8V83vEdkR/vmhNKv8wtTQoJZjI=; b=VR0VB6fDB+WPlN3KrTa9j/E/a4iZBWcyyJmFkjYhZTx7qqriqOxYgYT8BISpFf4C XWnDqmR0QThRym3BUNuTniFzZoftxW9eId6Ju0tgv0mOpKAFMD/TJfmRSuf2PjG+Hfa vVjMMCaAnIlXr05rC3hEOnnUqigDZaEOBWEhXA4g= Date: Tue, 22 Apr 2025 20:07:19 +0800 From: Li Chen To: "Peter Maydell" , "Shannon Zhao" , "Michael S. Tsirkin" , "Igor Mammedov" , "Ani Sinha" , "Eduardo Habkost" , "Marcel Apfelbaum" , =?UTF-8?Q?=22Philippe_Mathieu-Daud=C3=A9=22?= , "Yanan Wang" , "Zhao Liu" , "Song Gao" , "Jiaxun Yang" , "Sunil V L" , "Palmer Dabbelt" , "Alistair Francis" , "Weiwei Li" , "qemu-arm" , "qemu-devel" , "qemu-riscv" Message-ID: <1965d6541ea.102a06ad4912575.3151797857612362065@linux.beauty> In-Reply-To: <1965d621e25.fafa759e911037.825810937022699867@linux.beauty> References: <1965d621e25.fafa759e911037.825810937022699867@linux.beauty> Subject: [PATCH V2 3/3] tests/qtest/bios-tables-test: Add test for disabling SPCR on RISC-V MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Importance: Medium User-Agent: Zoho Mail X-Mailer: Zoho Mail Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=136.143.188.12; envelope-from=me@linux.beauty; helo=sender4-op-o12.zoho.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_VALIDITY_CERTIFIED_BLOCKED=0.001, RCVD_IN_VALIDITY_RPBL_BLOCKED=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-Mailman-Approved-At: Tue, 22 Apr 2025 09:07:38 -0400 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+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity me@linux.beauty) X-ZM-MESSAGEID: 1745327339040019100 Content-Type: text/plain; charset="utf-8" From: Li Chen Add ACPI SPCR table test case for RISC-V when SPCR was off. Signed-off-by: Li Chen --- tests/qtest/bios-tables-test.c | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/tests/qtest/bios-tables-test.c b/tests/qtest/bios-tables-test.c index d2a1aa7fb3..44de152a36 100644 --- a/tests/qtest/bios-tables-test.c +++ b/tests/qtest/bios-tables-test.c @@ -1807,6 +1807,26 @@ static void test_acpi_aarch64_virt_tcg_acpi_spcr(voi= d) " -machine spcr=3Doff", &data); free_test_data(&data); } + +static void test_acpi_riscv_virt_tcg_acpi_spcr(void) +{ + test_data data =3D { + .machine =3D "virt", + .arch =3D "riscv64", + .tcg_only =3D true, + .uefi_fl1 =3D "pc-bios/edk2-riscv-code.fd", + .uefi_fl2 =3D "pc-bios/edk2-riscv-vars.fd", + .cd =3D "tests/data/uefi-boot-images/bios-tables-test.riscv64.iso.= qcow2", + .ram_start =3D 0x80000000ULL, + .scan_len =3D 128ULL * 1024 * 1024, + .variant =3D ".acpispcr", + }; + + test_acpi_one("-cpu rva22s64 " + "-machine spcr=3Doff", &data); + free_test_data(&data); +} + static void test_acpi_tcg_acpi_hmat(const char *machine, const char *arch) { test_data data =3D {}; @@ -2612,6 +2632,8 @@ int main(int argc, char *argv[]) qtest_add_func("acpi/virt", test_acpi_riscv64_virt_tcg); qtest_add_func("acpi/virt/numamem", test_acpi_riscv64_virt_tcg_numamem); + qtest_add_func("acpi/virt/acpispcr", + test_acpi_riscv_virt_tcg_acpi_spcr); } } ret =3D g_test_run(); --=20 2.49.0