Message ID | 20201023154156.6593-8-julien@xen.org (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | xen/arm: Unbreak ACPI | expand |
On Fri, 23 Oct 2020, Julien Grall wrote: > From: Julien Grall <julien.grall@arm.com> > > 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 <julien.grall@arm.com> > Signed-off-by: Andre Przywara <andre.przywara@arm.com> > Signed-off-by: Julien Grall <jgrall@amazon.com> Acked-by: Stefano Stabellini <sstabellini@kernel.org> > --- > 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_header *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 == 6 && fadt->minor_revision >= 0) ) > + if ( table->revision > 5 > + || (table->revision == 5 && fadt->minor_revision >= 1) ) > return 0; > > printk("Unsupported FADT revision %d.%d, should be 6.0+, will disable ACPI\n", > -- > 2.17.1 >
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_header *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 == 6 && fadt->minor_revision >= 0) ) + if ( table->revision > 5 + || (table->revision == 5 && fadt->minor_revision >= 1) ) return 0; printk("Unsupported FADT revision %d.%d, should be 6.0+, will disable ACPI\n",