Commit 19bde778 authored by Len Brown's avatar Len Brown

ACPI: suspend: don't let device _PS3 failure prevent suspend

6328a574
"Enable PNPACPI _PSx Support, v3"

added a call to acpi_bus_set_power(handle, ACPI_STATE_D3)
to pnpacpi_disable_resource() before the existing call
to evaluate _DIS on the device.

This caused suspend to fail on the system in
http://bugzilla.kernel.org/show_bug.cgi?id=13243
because the sanity check to verify we entered _PS3
failed on the serial port.

As a work-around, that sanity check can be disabled
system-wide with "acpi.power_nocheck=1"

Or perhaps we should just shrug off the _PS3 failure
and carry on with _DIS like we used to -- which is
what this patch does.
Signed-off-by: default avatarLen Brown <len.brown@intel.com>
parent ddc50b6a
...@@ -110,11 +110,9 @@ static int pnpacpi_disable_resources(struct pnp_dev *dev) ...@@ -110,11 +110,9 @@ static int pnpacpi_disable_resources(struct pnp_dev *dev)
/* acpi_unregister_gsi(pnp_irq(dev, 0)); */ /* acpi_unregister_gsi(pnp_irq(dev, 0)); */
ret = 0; ret = 0;
if (acpi_bus_power_manageable(handle)) { if (acpi_bus_power_manageable(handle))
ret = acpi_bus_set_power(handle, ACPI_STATE_D3); acpi_bus_set_power(handle, ACPI_STATE_D3);
if (ret) /* continue even if acpi_bus_set_power() fails */
return ret;
}
if (ACPI_FAILURE(acpi_evaluate_object(handle, "_DIS", NULL, NULL))) if (ACPI_FAILURE(acpi_evaluate_object(handle, "_DIS", NULL, NULL)))
ret = -ENODEV; ret = -ENODEV;
return ret; return ret;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment