diff options
author | njl <njl@FreeBSD.org> | 2004-09-01 17:59:29 +0000 |
---|---|---|
committer | njl <njl@FreeBSD.org> | 2004-09-01 17:59:29 +0000 |
commit | cb6dc8499ba76e39f1b895016d4314afa1796447 (patch) | |
tree | 9bead47ede37177945c64be34ba6b9b76e7345cf | |
parent | aac3e70226ce974507f4e98471f851f9280348fd (diff) | |
download | FreeBSD-src-cb6dc8499ba76e39f1b895016d4314afa1796447.zip FreeBSD-src-cb6dc8499ba76e39f1b895016d4314afa1796447.tar.gz |
Disable links after getting the possible resources. Even though _DIS
should only affect current resources, it seems best to wait until all
configuration is done before disabling it. If this fixes any problems, it
is a MT5 candidate.
-rw-r--r-- | sys/dev/acpica/acpi_pci_link.c | 24 |
1 files changed, 12 insertions, 12 deletions
diff --git a/sys/dev/acpica/acpi_pci_link.c b/sys/dev/acpica/acpi_pci_link.c index f2a15c8..7dd408b 100644 --- a/sys/dev/acpica/acpi_pci_link.c +++ b/sys/dev/acpica/acpi_pci_link.c @@ -373,18 +373,6 @@ acpi_pci_link_add_link(ACPI_HANDLE handle, struct acpi_prt_entry *entry) link->initial_irq = 0; } - /* - * Try to disable this link. If successful, set the current IRQ to - * zero and flags to indicate this link is not routed. If we can't - * run _DIS (i.e., the method doesn't exist), assume the initial - * IRQ was routed by the BIOS. - */ - if (ACPI_SUCCESS(AcpiEvaluateObject(handle, "_DIS", NULL, NULL))) { - link->current_irq = 0; - link->flags = ACPI_LINK_NONE; - } else - link->flags = ACPI_LINK_ROUTED; - error = AcpiGetPossibleResources(handle, &buf); if (ACPI_FAILURE(error)) { ACPI_DEBUG_PRINT((ACPI_DB_WARN, @@ -426,6 +414,18 @@ acpi_pci_link_add_link(ACPI_HANDLE handle, struct acpi_prt_entry *entry) } /* + * Try to disable this link. If successful, set the current IRQ to + * zero and flags to indicate this link is not routed. If we can't + * run _DIS (i.e., the method doesn't exist), assume the initial + * IRQ was routed by the BIOS. + */ + if (ACPI_SUCCESS(AcpiEvaluateObject(handle, "_DIS", NULL, NULL))) { + link->current_irq = 0; + link->flags = ACPI_LINK_NONE; + } else + link->flags = ACPI_LINK_ROUTED; + + /* * If the initial IRQ is invalid (not in _PRS), set it to 0 and * mark this link as not routed. We won't use it as the preferred * interrupt later when we route. |