|
@@ -885,6 +885,13 @@ static int acpi_bus_get_power_flags(struct acpi_device *device)
|
|
acpi_bus_add_power_resource(ps->resources.handles[j]);
|
|
acpi_bus_add_power_resource(ps->resources.handles[j]);
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+ /* The exist of _PR3 indicates D3Cold support */
|
|
|
|
+ if (i == ACPI_STATE_D3) {
|
|
|
|
+ status = acpi_get_handle(device->handle, object_name, &handle);
|
|
|
|
+ if (ACPI_SUCCESS(status))
|
|
|
|
+ device->power.states[ACPI_STATE_D3_COLD].flags.valid = 1;
|
|
|
|
+ }
|
|
|
|
+
|
|
/* Evaluate "_PSx" to see if we can do explicit sets */
|
|
/* Evaluate "_PSx" to see if we can do explicit sets */
|
|
object_name[2] = 'S';
|
|
object_name[2] = 'S';
|
|
status = acpi_get_handle(device->handle, object_name, &handle);
|
|
status = acpi_get_handle(device->handle, object_name, &handle);
|