Quellcode durchsuchen

PCI/ACPI: Remove unnecessary _OSC evaluation for control request

If a control had already been granted, we don't need to re-evaluate
_OSC for it because firmware may not reject control of any feature it
has previously granted control to.

Reviewed-by: Andrew Patterson <andrew.patterson@hp.com>
Tested-by: Andrew Patterson <andrew.patterson@hp.com>
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>
Taku Izumi vor 16 Jahren
Ursprung
Commit
e0fa3b43df
1 geänderte Dateien mit 4 neuen und 0 gelöschten Zeilen
  1. 4 0
      drivers/pci/pci-acpi.c

+ 4 - 0
drivers/pci/pci-acpi.c

@@ -210,6 +210,10 @@ acpi_status pci_osc_control_set(acpi_handle handle, u32 flags)
 		goto out;
 	}
 
+	/* No need to evaluate _OSC if the control was already granted. */
+	if ((osc_data->control_set & ctrlset) == ctrlset)
+		goto out;
+
 	if (!osc_data->is_queried) {
 		status = __acpi_query_osc(osc_data->support_set, osc_data);
 		if (ACPI_FAILURE(status))