diff options
Diffstat (limited to 'sys/dev/acpica/acpi_pci_link.c')
-rw-r--r-- | sys/dev/acpica/acpi_pci_link.c | 13 |
1 files changed, 8 insertions, 5 deletions
diff --git a/sys/dev/acpica/acpi_pci_link.c b/sys/dev/acpica/acpi_pci_link.c index 3b853b6583849..2ce7e691d266e 100644 --- a/sys/dev/acpica/acpi_pci_link.c +++ b/sys/dev/acpica/acpi_pci_link.c @@ -146,15 +146,18 @@ static int acpi_pci_link_probe(device_t dev) { char descr[28], name[12]; + int rv; /* * We explicitly do not check _STA since not all systems set it to * sensible values. */ - if (acpi_disabled("pci_link") || - ACPI_ID_PROBE(device_get_parent(dev), dev, pci_link_ids) == NULL) - return (ENXIO); - + if (acpi_disabled("pci_link")) + return (ENXIO); + rv = ACPI_ID_PROBE(device_get_parent(dev), dev, pci_link_ids, NULL); + if (rv > 0) + return (rv); + if (ACPI_SUCCESS(acpi_short_name(acpi_get_handle(dev), name, sizeof(name)))) { snprintf(descr, sizeof(descr), "ACPI PCI Link %s", name); @@ -162,7 +165,7 @@ acpi_pci_link_probe(device_t dev) } else device_set_desc(dev, "ACPI PCI Link"); device_quiet(dev); - return (0); + return (rv); } static ACPI_STATUS |