Module Name: src Committed By: jmcneill Date: Sun Jun 30 09:34:24 UTC 2024
Modified Files: src/sys/dev/acpi: acpi_resource.c Log Message: acpi: Ignore producer/consumer bit for fixed memory resources. The requirement to honour the producer/consumer bit in fixed memory resource descriptors was dropped at some point in a revision to the ACPI 2.0 specification because too many firmware implementations got it wrong. To generate a diff of this commit: cvs rdiff -u -r1.42 -r1.43 src/sys/dev/acpi/acpi_resource.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
Modified files: Index: src/sys/dev/acpi/acpi_resource.c diff -u src/sys/dev/acpi/acpi_resource.c:1.42 src/sys/dev/acpi/acpi_resource.c:1.43 --- src/sys/dev/acpi/acpi_resource.c:1.42 Sat Aug 7 18:39:40 2021 +++ src/sys/dev/acpi/acpi_resource.c Sun Jun 30 09:34:24 2024 @@ -1,4 +1,4 @@ -/* $NetBSD: acpi_resource.c,v 1.42 2021/08/07 18:39:40 jmcneill Exp $ */ +/* $NetBSD: acpi_resource.c,v 1.43 2024/06/30 09:34:24 jmcneill Exp $ */ /* * Copyright 2001 Wasabi Systems, Inc. @@ -67,7 +67,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: acpi_resource.c,v 1.42 2021/08/07 18:39:40 jmcneill Exp $"); +__KERNEL_RCSID(0, "$NetBSD: acpi_resource.c,v 1.43 2024/06/30 09:34:24 jmcneill Exp $"); #include <sys/param.h> #include <sys/device.h> @@ -247,9 +247,7 @@ acpi_resource_parse_callback(ACPI_RESOUR case ACPI_RESOURCE_TYPE_ADDRESS32: /* XXX Only fixed size supported for now */ - if (res->Data.Address32.Address.AddressLength == 0 || - (!arg->include_producer && - res->Data.Address32.ProducerConsumer != ACPI_CONSUMER)) + if (res->Data.Address32.Address.AddressLength == 0) break; #define ADDRESS32_FIXED2(r) \ ((r)->Data.Address32.MinAddressFixed == ACPI_ADDRESS_FIXED && \ @@ -303,9 +301,7 @@ acpi_resource_parse_callback(ACPI_RESOUR case ACPI_RESOURCE_TYPE_ADDRESS64: #ifdef _LP64 /* XXX Only fixed size supported for now */ - if (res->Data.Address64.Address.AddressLength == 0 || - (!arg->include_producer && - res->Data.Address64.ProducerConsumer != ACPI_CONSUMER)) + if (res->Data.Address64.Address.AddressLength == 0) break; #define ADDRESS64_FIXED2(r) \ ((r)->Data.Address64.MinAddressFixed == ACPI_ADDRESS_FIXED && \