diff --git a/drivers/acpi/sleep.c b/drivers/acpi/sleep.c index 42159a28f4332f8dace6c4089c98ebbc86683209..ab889becd3f3d56bf56ba66f2caf25cb5433274c 100644 --- a/drivers/acpi/sleep.c +++ b/drivers/acpi/sleep.c @@ -689,19 +689,25 @@ int acpi_pm_device_sleep_wake(struct device *dev, bool enable) { acpi_handle handle; struct acpi_device *adev; + int error; if (!device_may_wakeup(dev)) return -EINVAL; handle = DEVICE_ACPI_HANDLE(dev); if (!handle || ACPI_FAILURE(acpi_bus_get_device(handle, &adev))) { - printk(KERN_DEBUG "ACPI handle has no context!\n"); + dev_dbg(dev, "ACPI handle has no context in %s!\n", __func__); return -ENODEV; } - return enable ? + error = enable ? acpi_enable_wakeup_device_power(adev, acpi_target_sleep_state) : acpi_disable_wakeup_device_power(adev); + if (!error) + dev_info(dev, "wake-up capability %s by ACPI\n", + enable ? "enabled" : "disabled"); + + return error; } #endif diff --git a/drivers/pci/pci-acpi.c b/drivers/pci/pci-acpi.c index e798c4736a66a7e3a65acb56dc53ec3b6c073489..0bddd787490d39b4e3e511d6eec5d7ad8547b8a9 100644 --- a/drivers/pci/pci-acpi.c +++ b/drivers/pci/pci-acpi.c @@ -111,17 +111,8 @@ static bool acpi_pci_can_wakeup(struct pci_dev *dev) static int acpi_pci_sleep_wake(struct pci_dev *dev, bool enable) { - int error; - - if (!acpi_pci_can_wakeup(dev)) - return 0; - - error = acpi_pm_device_sleep_wake(&dev->dev, enable); - if (!error) - dev_info(&dev->dev, "wake-up capability %s by ACPI\n", - enable ? "enabled" : "disabled"); - - return error; + return acpi_pci_can_wakeup(dev) ? + acpi_pm_device_sleep_wake(&dev->dev, enable) : 0; } static struct pci_platform_pm_ops acpi_pci_platform_pm = {