Push acpi(4) _CRS parsing down after matching skippable and ISA hardware IDs.
authorhastings <hastings@openbsd.org>
Wed, 4 Sep 2024 21:39:18 +0000 (21:39 +0000)
committerhastings <hastings@openbsd.org>
Wed, 4 Sep 2024 21:39:18 +0000 (21:39 +0000)
ok kettenis@

sys/dev/acpi/acpi.c

index 5da2524..46b09fc 100644 (file)
@@ -1,4 +1,4 @@
-/* $OpenBSD: acpi.c,v 1.438 2024/08/18 02:53:08 deraadt Exp $ */
+/* $OpenBSD: acpi.c,v 1.439 2024/09/04 21:39:18 hastings Exp $ */
 /*
  * Copyright (c) 2005 Thorsten Lockert <tholo@sigmasoft.com>
  * Copyright (c) 2005 Jordan Hargrave <jordan@openbsd.org>
@@ -3249,7 +3249,6 @@ acpi_foundhid(struct aml_node *node, void *arg)
        aaa.aaa_node = node->parent;
        aaa.aaa_dev = dev;
        aaa.aaa_cdev = cdev;
-       acpi_parse_crs(sc, &aaa);
 
 #ifndef SMALL_KERNEL
        if (!strcmp(cdev, ACPI_DEV_MOUSE)) {
@@ -3266,6 +3265,8 @@ acpi_foundhid(struct aml_node *node, void *arg)
            acpi_matchhids(&aaa, acpi_isa_hids, "none"))
                return (0);
 
+       acpi_parse_crs(sc, &aaa);
+
        aaa.aaa_dmat = acpi_iommu_device_map(node->parent, aaa.aaa_dmat);
 
        if (!node->parent->attached) {