summaryrefslogtreecommitdiffstats
path: root/sys/dev/acpica/acpi_pci_link.c
diff options
context:
space:
mode:
authoriwasaki <iwasaki@FreeBSD.org>2002-10-31 20:43:02 +0000
committeriwasaki <iwasaki@FreeBSD.org>2002-10-31 20:43:02 +0000
commite85ea23a6d7e09e65f5ab082f874fc1a181d81af (patch)
tree50746d309e72d70ac1d1c752ab2e10dd696bafce /sys/dev/acpica/acpi_pci_link.c
parent400e1f5e97009f227477935642545ef14884a3f7 (diff)
downloadFreeBSD-src-e85ea23a6d7e09e65f5ab082f874fc1a181d81af.zip
FreeBSD-src-e85ea23a6d7e09e65f5ab082f874fc1a181d81af.tar.gz
Don't examine ACPI_STA_ENABLE bit of device's_STA object on initial
state. Instead, use ACPI_STA_PRESENT and ACPI_STA_FUNCTIONAL for it. In some ACPI BIOS implementations, boot disabled devices don't have ACPI_STA_ENABLE bit in _STA object. Also it is not fatal if getting current IRQ of boot disabled devices is failed in initial state. And minor fixes.
Diffstat (limited to 'sys/dev/acpica/acpi_pci_link.c')
-rw-r--r--sys/dev/acpica/acpi_pci_link.c9
1 files changed, 4 insertions, 5 deletions
diff --git a/sys/dev/acpica/acpi_pci_link.c b/sys/dev/acpica/acpi_pci_link.c
index d6120ef..84246f0 100644
--- a/sys/dev/acpica/acpi_pci_link.c
+++ b/sys/dev/acpica/acpi_pci_link.c
@@ -53,9 +53,9 @@ struct acpi_pci_link_entry {
UINT8 initial_irq;
ACPI_RESOURCE possible_resources;
UINT8 number_of_interrupts;
- UINT8 interrupts[MAX_POSSIBLE_INTERRUPTS];;
+ UINT8 interrupts[MAX_POSSIBLE_INTERRUPTS];
- UINT8 sorted_irq[MAX_POSSIBLE_INTERRUPTS];;
+ UINT8 sorted_irq[MAX_POSSIBLE_INTERRUPTS];
int references;
int priority;
};
@@ -370,7 +370,6 @@ acpi_pci_link_add_link(ACPI_HANDLE handle, struct acpi_prt_entry *entry)
ACPI_DEBUG_PRINT((ACPI_DB_WARN,
"couldn't get current IRQ from PCI interrupt link %s - %s\n",
acpi_name(handle), AcpiFormatException(error)));
- goto out;
}
link->initial_irq = link->current_irq;
@@ -461,9 +460,9 @@ acpi_pci_link_add_prt(device_t pcidev, ACPI_PCI_ROUTING_TABLE *prt, int busno)
return_ACPI_STATUS (error);
}
- if (!(sta & ACPI_STA_ENABLE)) {
+ if (!(sta & (ACPI_STA_PRESENT | ACPI_STA_FUNCTIONAL))) {
ACPI_DEBUG_PRINT((ACPI_DB_ERROR,
- "PCI interrupt link is disabled - %s\n",
+ "PCI interrupt link is not functional - %s\n",
acpi_name(handle)));
return_ACPI_STATUS (AE_ERROR);
}
OpenPOWER on IntegriCloud