From nobody Thu Mar 28 20:21:48 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) client-ip=192.237.175.120; envelope-from=xen-devel-bounces@lists.xenproject.org; helo=lists.xenproject.org; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) smtp.mailfrom=xen-devel-bounces@lists.xenproject.org ARC-Seal: i=1; a=rsa-sha256; t=1605805746; cv=none; d=zohomail.com; s=zohoarc; b=RBqlED5w9ztB/IT0VQ1U9qkA1wu3NuwxeB5QJW9dd6TIA0zKApZvu8TNkvgYxnKShisaNx9Vb5fmERr0ZlbVi0GeOygyj/b14CZG1uP5kuhQV7JDT0t7QgxyFiRnE80GEWJHrQove9iPjgykHqou4+7glLuE39iZ2navV8kSA9o= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1605805746; h=Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Help:List-Unsubscribe:Message-ID:References:Sender:Subject:To; bh=Svrds4fjq26e/xBeepsLn7GM+LTQUjWZi4AUjhu+NNc=; b=X+rz0omR/qTnybSfyrjYa1RjNWPTa8AwekHxpt5lseKdbfx/PhufpyndCJZErynmNVrXjNYd8vHASXLP8BUuIrZRNb3XJ0eebSZzs5MAMHu9JfAFgQQmQVbxeh9zG3yIRcjxMSGkPL8/508f8ffI1mLhYID68yExOJKLwV4IGfs= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) smtp.mailfrom=xen-devel-bounces@lists.xenproject.org Return-Path: Received: from lists.xenproject.org (lists.xenproject.org [192.237.175.120]) by mx.zohomail.com with SMTPS id 1605805746581868.0631541070461; Thu, 19 Nov 2020 09:09:06 -0800 (PST) Received: from list by lists.xenproject.org with outflank-mailman.31210.61518 (Exim 4.92) (envelope-from ) id 1kfnQB-0007id-Q4; Thu, 19 Nov 2020 17:08:35 +0000 Received: by outflank-mailman (output) from mailman id 31210.61518; Thu, 19 Nov 2020 17:08:35 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1kfnQB-0007iW-Mm; Thu, 19 Nov 2020 17:08:35 +0000 Received: by outflank-mailman (input) for mailman id 31210; Thu, 19 Nov 2020 17:08:34 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1kfnQA-0007hU-5l for xen-devel@lists.xenproject.org; Thu, 19 Nov 2020 17:08:34 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1kfnQ9-0000ur-Nh; Thu, 19 Nov 2020 17:08:33 +0000 Received: from 54-240-197-235.amazon.com ([54.240.197.235] helo=ufe34d9ed68d054.ant.amazon.com) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1kfnQA-0000U1-DT; Thu, 19 Nov 2020 17:08:34 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1kfnQA-0007hU-5l for xen-devel@lists.xenproject.org; Thu, 19 Nov 2020 17:08:34 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1kfnQ9-0000ur-Nh; Thu, 19 Nov 2020 17:08:33 +0000 Received: from 54-240-197-235.amazon.com ([54.240.197.235] helo=ufe34d9ed68d054.ant.amazon.com) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1kfnQA-0000U1-DT; Thu, 19 Nov 2020 17:08:34 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From; bh=Svrds4fjq26e/xBeepsLn7GM+LTQUjWZi4AUjhu+NNc=; b=F7FE+1ymFhHucWhrTjgG7Yq1x yAm9CdYzA3GaNseWuMaPq4j72+KyEF50J6e4fqB2qB0Qf9mKUh4xPzoKbapPwQIAx2vOz9cljFUqU C37+DNiGyurxwkUqtjjsJUNlPZJSwiZ6ARLBfc7K1qkUUYyhAKpfO5MqDPDliha7PMWc4=; From: Julien Grall To: xen-devel@lists.xenproject.org Cc: alex.bennee@linaro.org, bertrand.marquis@arm.com, andre.przywara@arm.com, Rahul.Singh@arm.com, Julien Grall Subject: [PATCH v4 1/3] xen/arm: gic: acpi: Guard helpers to build the MADT with CONFIG_ACPI Date: Thu, 19 Nov 2020 17:08:27 +0000 Message-Id: <20201119170829.9923-2-julien@xen.org> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20201119170829.9923-1-julien@xen.org> References: <20201119170829.9923-1-julien@xen.org> X-ZohoMail-DKIM: pass (identity @xen.org) Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" From: Julien Grall gic_make_hwdom_madt() and gic_get_hwdom_madt_size() are ACPI specific. While they build fine today, this will change in a follow-up patch. Rather than trying to fix the build on ACPI, it is best to avoid compiling the helpers and the associated callbacks when CONFIG_ACPI=3Dn. Signed-off-by: Julien Grall Acked-by: Stefano Stabellini Reviewed-by: Bertrand Marquis --- Changes in v4: - Patch added --- xen/arch/arm/gic-v2.c | 8 +++----- xen/arch/arm/gic-v3.c | 11 ++--------- xen/arch/arm/gic.c | 2 ++ xen/include/asm-arm/gic.h | 10 ++++++++-- 4 files changed, 15 insertions(+), 16 deletions(-) diff --git a/xen/arch/arm/gic-v2.c b/xen/arch/arm/gic-v2.c index 0f747538dbcd..581ea5ba6b2c 100644 --- a/xen/arch/arm/gic-v2.c +++ b/xen/arch/arm/gic-v2.c @@ -1114,12 +1114,12 @@ static int gicv2_iomem_deny_access(const struct dom= ain *d) return iomem_deny_access(d, mfn, mfn + nr); } =20 +#ifdef CONFIG_ACPI static unsigned long gicv2_get_hwdom_extra_madt_size(const struct domain *= d) { return 0; } =20 -#ifdef CONFIG_ACPI static int gicv2_make_hwdom_madt(const struct domain *d, u32 offset) { struct acpi_subtable_header *header; @@ -1248,10 +1248,6 @@ static void __init gicv2_acpi_init(void) } #else static void __init gicv2_acpi_init(void) { } -static int gicv2_make_hwdom_madt(const struct domain *d, u32 offset) -{ - return 0; -} #endif =20 static int __init gicv2_init(void) @@ -1357,8 +1353,10 @@ const static struct gic_hw_operations gicv2_ops =3D { .read_apr =3D gicv2_read_apr, .read_pending_state =3D gicv2_read_pending_state, .make_hwdom_dt_node =3D gicv2_make_hwdom_dt_node, +#ifdef CONFIG_ACPI .make_hwdom_madt =3D gicv2_make_hwdom_madt, .get_hwdom_extra_madt_size =3D gicv2_get_hwdom_extra_madt_size, +#endif .map_hwdom_extra_mappings =3D gicv2_map_hwdown_extra_mappings, .iomem_deny_access =3D gicv2_iomem_deny_access, .do_LPI =3D gicv2_do_LPI, diff --git a/xen/arch/arm/gic-v3.c b/xen/arch/arm/gic-v3.c index 0f6cbf6224e9..2a344393a0e4 100644 --- a/xen/arch/arm/gic-v3.c +++ b/xen/arch/arm/gic-v3.c @@ -1735,15 +1735,6 @@ static void __init gicv3_acpi_init(void) } #else static void __init gicv3_acpi_init(void) { } -static int gicv3_make_hwdom_madt(const struct domain *d, u32 offset) -{ - return 0; -} - -static unsigned long gicv3_get_hwdom_extra_madt_size(const struct domain *= d) -{ - return 0; -} #endif =20 static bool gic_dist_supports_lpis(void) @@ -1858,8 +1849,10 @@ static const struct gic_hw_operations gicv3_ops =3D { .read_pending_state =3D gicv3_read_pending_state, .secondary_init =3D gicv3_secondary_cpu_init, .make_hwdom_dt_node =3D gicv3_make_hwdom_dt_node, +#ifdef CONFIG_ACPI .make_hwdom_madt =3D gicv3_make_hwdom_madt, .get_hwdom_extra_madt_size =3D gicv3_get_hwdom_extra_madt_size, +#endif .iomem_deny_access =3D gicv3_iomem_deny_access, .do_LPI =3D gicv3_do_LPI, }; diff --git a/xen/arch/arm/gic.c b/xen/arch/arm/gic.c index d623c57cb9fa..fe60619e99cf 100644 --- a/xen/arch/arm/gic.c +++ b/xen/arch/arm/gic.c @@ -443,6 +443,7 @@ int gic_make_hwdom_dt_node(const struct domain *d, return gic_hw_ops->make_hwdom_dt_node(d, gic, fdt); } =20 +#ifdef CONFIG_ACPI int gic_make_hwdom_madt(const struct domain *d, u32 offset) { return gic_hw_ops->make_hwdom_madt(d, offset); @@ -459,6 +460,7 @@ unsigned long gic_get_hwdom_madt_size(const struct doma= in *d) =20 return madt_size; } +#endif =20 int gic_iomem_deny_access(const struct domain *d) { diff --git a/xen/include/asm-arm/gic.h b/xen/include/asm-arm/gic.h index ba870523bb2a..ad0f7452d005 100644 --- a/xen/include/asm-arm/gic.h +++ b/xen/include/asm-arm/gic.h @@ -378,12 +378,14 @@ struct gic_hw_operations { /* Create GIC node for the hardware domain */ int (*make_hwdom_dt_node)(const struct domain *d, const struct dt_device_node *gic, void *fdt); +#ifdef CONFIG_ACPI /* Create MADT table for the hardware domain */ int (*make_hwdom_madt)(const struct domain *d, u32 offset); - /* Map extra GIC MMIO, irqs and other hw stuffs to the hardware domain= . */ - int (*map_hwdom_extra_mappings)(struct domain *d); /* Query the size of hardware domain madt table */ unsigned long (*get_hwdom_extra_madt_size)(const struct domain *d); +#endif + /* Map extra GIC MMIO, irqs and other hw stuffs to the hardware domain= . */ + int (*map_hwdom_extra_mappings)(struct domain *d); /* Deny access to GIC regions */ int (*iomem_deny_access)(const struct domain *d); /* Handle LPIs, which require special handling */ @@ -435,8 +437,12 @@ void register_gic_ops(const struct gic_hw_operations *= ops); int gic_make_hwdom_dt_node(const struct domain *d, const struct dt_device_node *gic, void *fdt); + +#ifdef CONFIG_ACPI int gic_make_hwdom_madt(const struct domain *d, u32 offset); unsigned long gic_get_hwdom_madt_size(const struct domain *d); +#endif + int gic_map_hwdom_extra_mappings(struct domain *d); int gic_iomem_deny_access(const struct domain *d); =20 --=20 2.17.1 From nobody Thu Mar 28 20:21:48 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) client-ip=192.237.175.120; envelope-from=xen-devel-bounces@lists.xenproject.org; helo=lists.xenproject.org; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) smtp.mailfrom=xen-devel-bounces@lists.xenproject.org ARC-Seal: i=1; a=rsa-sha256; t=1605805745; cv=none; d=zohomail.com; s=zohoarc; b=kWiJZhC8HohTVWmyL5R0QkqtyHidwbUX5UhS2gtzXwg9W/DQxx5AqFMflYxy63SEqOxt6xdT083wiIb/wF8zeyQhTvWIZqZYd5H1vNo7KNQrVtoA2wUlo03L6DrJSqVWqbime09XihIKX0u3jRgMCXyjNEgt9tW/KWmEZ4kzAlY= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1605805745; h=Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Help:List-Unsubscribe:Message-ID:References:Sender:Subject:To; bh=QAujMV9Xzy7Ut9dM8y6NKak187oQRubSEIiR6ad+wBs=; b=HBci6GsLoAWcc853IzlUQFyAaaifpwu+/FtdbJ4f9mPVuCi3YdFTBNwvSeU6oyVMX5vdKoeqkhioKX6d81rjluAksw1z/io/458/helnQFakQOX8P4TUSnfbXrG6JR4Fhf6wmeoRyu+svGVCWmQg7RfGY8dDREZCDWblr90l2N4= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) smtp.mailfrom=xen-devel-bounces@lists.xenproject.org Return-Path: Received: from lists.xenproject.org (lists.xenproject.org [192.237.175.120]) by mx.zohomail.com with SMTPS id 1605805745670190.87382453756481; Thu, 19 Nov 2020 09:09:05 -0800 (PST) Received: from list by lists.xenproject.org with outflank-mailman.31211.61531 (Exim 4.92) (envelope-from ) id 1kfnQD-0007k7-3U; Thu, 19 Nov 2020 17:08:37 +0000 Received: by outflank-mailman (output) from mailman id 31211.61531; Thu, 19 Nov 2020 17:08:37 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1kfnQC-0007jx-Vb; Thu, 19 Nov 2020 17:08:36 +0000 Received: by outflank-mailman (input) for mailman id 31211; Thu, 19 Nov 2020 17:08:35 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1kfnQB-0007iR-Cg for xen-devel@lists.xenproject.org; Thu, 19 Nov 2020 17:08:35 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1kfnQB-0000va-04; Thu, 19 Nov 2020 17:08:35 +0000 Received: from 54-240-197-235.amazon.com ([54.240.197.235] helo=ufe34d9ed68d054.ant.amazon.com) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1kfnQB-0000U1-ML; Thu, 19 Nov 2020 17:08:35 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1kfnQB-0007iR-Cg for xen-devel@lists.xenproject.org; Thu, 19 Nov 2020 17:08:35 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1kfnQB-0000va-04; Thu, 19 Nov 2020 17:08:35 +0000 Received: from 54-240-197-235.amazon.com ([54.240.197.235] helo=ufe34d9ed68d054.ant.amazon.com) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1kfnQB-0000U1-ML; Thu, 19 Nov 2020 17:08:35 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From; bh=QAujMV9Xzy7Ut9dM8y6NKak187oQRubSEIiR6ad+wBs=; b=aCJJJb6sjI77v6nqN0uVYCtU1 50k3k2Qm1ZfPgDgkoeXxmsu/PQ4GmrTTGwy9W2yoOoeAgpU28w2huwx1+bLqexzs5wl2UV6WsY+Kp VYmRA7KKUSuy61RcjC0Q6+MXJIi/nTrtOW6RydU8NuBuGVeLIGQZPnx91HG3TIOdKB4x8=; From: Julien Grall To: xen-devel@lists.xenproject.org Cc: alex.bennee@linaro.org, bertrand.marquis@arm.com, andre.przywara@arm.com, Rahul.Singh@arm.com, Julien Grall , Julien Grall Subject: [PATCH v4 2/3] xen/arm: gic: acpi: Use the correct length for the GICC structure Date: Thu, 19 Nov 2020 17:08:28 +0000 Message-Id: <20201119170829.9923-3-julien@xen.org> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20201119170829.9923-1-julien@xen.org> References: <20201119170829.9923-1-julien@xen.org> X-ZohoMail-DKIM: pass (identity @xen.org) Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" From: Julien Grall The length of the GICC structure in the MADT ACPI table differs between version 5.1 and 6.0, although there are no other relevant differences. Use the BAD_MADT_GICC_ENTRY macro, which was specifically designed to overcome this issue. Signed-off-by: Julien Grall Signed-off-by: Andre Przywara Signed-off-by: Julien Grall Reviewed-by: Bertrand Marquis --- Changes in v3: - Update the commit title as we also modify GICv3 code - Use the correct length in more places Changes in v2: - Patch added --- xen/arch/arm/acpi/boot.c | 2 +- xen/arch/arm/gic-v2.c | 5 +++-- xen/arch/arm/gic-v3.c | 6 +++--- xen/arch/arm/gic.c | 2 +- 4 files changed, 8 insertions(+), 7 deletions(-) diff --git a/xen/arch/arm/acpi/boot.c b/xen/arch/arm/acpi/boot.c index 30e4bd1bc5a7..55c3e5cbc834 100644 --- a/xen/arch/arm/acpi/boot.c +++ b/xen/arch/arm/acpi/boot.c @@ -131,7 +131,7 @@ acpi_parse_gic_cpu_interface(struct acpi_subtable_heade= r *header, struct acpi_madt_generic_interrupt *processor =3D container_of(header, struct acpi_madt_generic_interrupt, he= ader); =20 - if ( BAD_MADT_ENTRY(processor, end) ) + if ( BAD_MADT_GICC_ENTRY(processor, end) ) return -EINVAL; =20 acpi_table_print_madt_entry(header); diff --git a/xen/arch/arm/gic-v2.c b/xen/arch/arm/gic-v2.c index 581ea5ba6b2c..b2adc8ec9a64 100644 --- a/xen/arch/arm/gic-v2.c +++ b/xen/arch/arm/gic-v2.c @@ -1136,7 +1136,8 @@ static int gicv2_make_hwdom_madt(const struct domain = *d, u32 offset) =20 host_gicc =3D container_of(header, struct acpi_madt_generic_interrupt, header); - size =3D sizeof(struct acpi_madt_generic_interrupt); + + size =3D ACPI_MADT_GICC_LENGTH; /* Add Generic Interrupt */ for ( i =3D 0; i < d->max_vcpus; i++ ) { @@ -1165,7 +1166,7 @@ gic_acpi_parse_madt_cpu(struct acpi_subtable_header *= header, struct acpi_madt_generic_interrupt *processor =3D container_of(header, struct acpi_madt_generic_interrupt, he= ader); =20 - if ( BAD_MADT_ENTRY(processor, end) ) + if ( BAD_MADT_GICC_ENTRY(processor, end) ) return -EINVAL; =20 /* Read from APIC table and fill up the GIC variables */ diff --git a/xen/arch/arm/gic-v3.c b/xen/arch/arm/gic-v3.c index 2a344393a0e4..ac28013c1967 100644 --- a/xen/arch/arm/gic-v3.c +++ b/xen/arch/arm/gic-v3.c @@ -1499,7 +1499,7 @@ static int gicv3_make_hwdom_madt(const struct domain = *d, u32 offset) =20 host_gicc =3D container_of(header, struct acpi_madt_generic_interrupt, header); - size =3D sizeof(struct acpi_madt_generic_interrupt); + size =3D ACPI_MADT_GICC_LENGTH; for ( i =3D 0; i < d->max_vcpus; i++ ) { gicc =3D (struct acpi_madt_generic_interrupt *)(base_ptr + table_l= en); @@ -1558,7 +1558,7 @@ gic_acpi_parse_madt_cpu(struct acpi_subtable_header *= header, struct acpi_madt_generic_interrupt *processor =3D container_of(header, struct acpi_madt_generic_interrupt, he= ader); =20 - if ( BAD_MADT_ENTRY(processor, end) ) + if ( BAD_MADT_GICC_ENTRY(processor, end) ) return -EINVAL; =20 /* Read from APIC table and fill up the GIC variables */ @@ -1628,7 +1628,7 @@ gic_acpi_get_madt_cpu_num(struct acpi_subtable_header= *header, struct acpi_madt_generic_interrupt *cpuif; =20 cpuif =3D (struct acpi_madt_generic_interrupt *)header; - if ( BAD_MADT_ENTRY(cpuif, end) || !cpuif->gicr_base_address ) + if ( BAD_MADT_GICC_ENTRY(cpuif, end) || !cpuif->gicr_base_address ) return -EINVAL; =20 return 0; diff --git a/xen/arch/arm/gic.c b/xen/arch/arm/gic.c index fe60619e99cf..3b0331b53830 100644 --- a/xen/arch/arm/gic.c +++ b/xen/arch/arm/gic.c @@ -454,7 +454,7 @@ unsigned long gic_get_hwdom_madt_size(const struct doma= in *d) unsigned long madt_size; =20 madt_size =3D sizeof(struct acpi_table_madt) - + sizeof(struct acpi_madt_generic_interrupt) * d->max_vcpus + + ACPI_MADT_GICC_LENGTH * d->max_vcpus + sizeof(struct acpi_madt_generic_distributor) + gic_hw_ops->get_hwdom_extra_madt_size(d); =20 --=20 2.17.1 From nobody Thu Mar 28 20:21:48 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) client-ip=192.237.175.120; envelope-from=xen-devel-bounces@lists.xenproject.org; helo=lists.xenproject.org; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) smtp.mailfrom=xen-devel-bounces@lists.xenproject.org ARC-Seal: i=1; a=rsa-sha256; t=1605805746; cv=none; d=zohomail.com; s=zohoarc; b=Oa7iOBqOAAFRT4hhq7oXrUMcH5RxdfWiq/5xdGC+8hplZ0SB+AFpfS5cwpBeSaeiY2o3G094TZ3bqlUzjj0l1QHqS/3SfLyWYthg0Mi7ZZlpoF6w+85pFKkgbfTYNIQWWEWH3j6oZLK/OZLlgyhzaIIKVv9x9dEaHT/MxlG3yQk= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1605805746; h=Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Help:List-Unsubscribe:Message-ID:References:Sender:Subject:To; bh=mZpQmkQLUUO1hccs/83l4shhsGEQrqSCrng3B/PMRp8=; b=XK+yseNCHUfYYDlxBWE85TN4O7LPzLEekt+9vpECiN0NG9HQB9T95cHHuKY7iwG9kev7PDVSBnbBMz4kg49Lxarc2CjY/ql3d0A8iYQitjrCkDThQohmiwnEAlMgy8r4PwvpGhghKYWIIphFwsJ97igeRheiIFnkS0OjXJ5TP8A= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) smtp.mailfrom=xen-devel-bounces@lists.xenproject.org Return-Path: Received: from lists.xenproject.org (lists.xenproject.org [192.237.175.120]) by mx.zohomail.com with SMTPS id 1605805746793629.0631452702087; Thu, 19 Nov 2020 09:09:06 -0800 (PST) Received: from list by lists.xenproject.org with outflank-mailman.31212.61540 (Exim 4.92) (envelope-from ) id 1kfnQD-0007lK-PZ; Thu, 19 Nov 2020 17:08:37 +0000 Received: by outflank-mailman (output) from mailman id 31212.61540; Thu, 19 Nov 2020 17:08:37 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1kfnQD-0007l3-G2; Thu, 19 Nov 2020 17:08:37 +0000 Received: by outflank-mailman (input) for mailman id 31212; Thu, 19 Nov 2020 17:08:36 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1kfnQC-0007ji-Or for xen-devel@lists.xenproject.org; Thu, 19 Nov 2020 17:08:36 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1kfnQC-0000vh-Bw; Thu, 19 Nov 2020 17:08:36 +0000 Received: from 54-240-197-235.amazon.com ([54.240.197.235] helo=ufe34d9ed68d054.ant.amazon.com) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1kfnQD-0000U1-2q; Thu, 19 Nov 2020 17:08:37 +0000 Received: from mail.xenproject.org ([104.130.215.37]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1kfnQC-0007ji-Or for xen-devel@lists.xenproject.org; Thu, 19 Nov 2020 17:08:36 +0000 Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1kfnQC-0000vh-Bw; Thu, 19 Nov 2020 17:08:36 +0000 Received: from 54-240-197-235.amazon.com ([54.240.197.235] helo=ufe34d9ed68d054.ant.amazon.com) by xenbits.xenproject.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1kfnQD-0000U1-2q; Thu, 19 Nov 2020 17:08:37 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From; bh=mZpQmkQLUUO1hccs/83l4shhsGEQrqSCrng3B/PMRp8=; b=1HuQ9T7HVyh8X0YHLZ0toblpD /xoNNu/ImjbvMuiO15+xQnDkKwHZevcEcccRLdJrk64DEb5LSVWG+fBGghmZX140PCRnwtK4253Fl XSz3j2Iu5LR9Z0l3KogPljy/DAu5LG0irbnYAbb+nxWg+rLu4QledAngbQ3RIG+w9AbBY=; From: Julien Grall To: xen-devel@lists.xenproject.org Cc: alex.bennee@linaro.org, bertrand.marquis@arm.com, andre.przywara@arm.com, Rahul.Singh@arm.com, Julien Grall , Julien Grall , Stefano Stabellini Subject: [PATCH v4 3/3] xen/arm: acpi: Allow Xen to boot with ACPI 5.1 Date: Thu, 19 Nov 2020 17:08:29 +0000 Message-Id: <20201119170829.9923-4-julien@xen.org> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20201119170829.9923-1-julien@xen.org> References: <20201119170829.9923-1-julien@xen.org> X-ZohoMail-DKIM: pass (identity @xen.org) Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" From: Julien Grall At the moment Xen requires the FADT ACPI table to be at least version 6.0, apparently because of some reliance on other ACPI v6.0 features. But actually this is overzealous, and Xen works now fine with ACPI v5.1. Let's relax the version check for the FADT table to allow QEMU to run the hypervisor with ACPI. Signed-off-by: Julien Grall Signed-off-by: Andre Przywara Signed-off-by: Julien Grall Acked-by: Stefano Stabellini Reviewed-by: Bertrand Marquis --- Changes in v3: - Add Stefano's acked-by Changes in v2: - Patch added --- xen/arch/arm/acpi/boot.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/xen/arch/arm/acpi/boot.c b/xen/arch/arm/acpi/boot.c index 55c3e5cbc834..7ea2990cb82c 100644 --- a/xen/arch/arm/acpi/boot.c +++ b/xen/arch/arm/acpi/boot.c @@ -181,8 +181,8 @@ static int __init acpi_parse_fadt(struct acpi_table_hea= der *table) * we only deal with ACPI 6.0 or newer revision to get GIC and SMP * boot protocol configuration data, or we will disable ACPI. */ - if ( table->revision > 6 - || (table->revision =3D=3D 6 && fadt->minor_revision >=3D 0) ) + if ( table->revision > 5 + || (table->revision =3D=3D 5 && fadt->minor_revision >=3D 1) ) return 0; =20 printk("Unsupported FADT revision %d.%d, should be 6.0+, will disable = ACPI\n", --=20 2.17.1