ACPI/PCI: Fix return value of acpi_cuery_osc()

If acpi_query_osc() returns other than AE_OK, __pci_osc_support_set()
stops scanning ACPI objects to evaluate _OSC. This prevents subsequent
_OSCs from being evaluated if some of root bridge doesn't have _OSC, for
example. So acpi_query_osc() should return always AE_OK to evaluate all
_OSC.

Signed-off-by: Kenji Kaneshige <kaneshige.kenji@jp.fujitsu.com>
Signed-off-by: Taku Izumi <izumi.taku@jp.fujitsu.com>
Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>
This commit is contained in:
Taku Izumi 2008-10-17 13:51:53 +09:00 committed by Jesse Barnes
parent adf411b819
commit ab20440c37

View File

@ -149,20 +149,19 @@ static acpi_status acpi_query_osc(acpi_handle handle,
status = acpi_get_handle(handle, "_OSC", &tmp); status = acpi_get_handle(handle, "_OSC", &tmp);
if (ACPI_FAILURE(status)) if (ACPI_FAILURE(status))
return status; return AE_OK;
mutex_lock(&pci_acpi_lock); mutex_lock(&pci_acpi_lock);
osc_data = acpi_get_osc_data(handle); osc_data = acpi_get_osc_data(handle);
if (!osc_data) { if (!osc_data) {
printk(KERN_ERR "acpi osc data array is full\n"); printk(KERN_ERR "acpi osc data array is full\n");
status = AE_ERROR;
goto out; goto out;
} }
status = __acpi_query_osc(flags, osc_data, &dummy); __acpi_query_osc(flags, osc_data, &dummy);
out: out:
mutex_unlock(&pci_acpi_lock); mutex_unlock(&pci_acpi_lock);
return status; return AE_OK;
} }
/** /**