|
@@ -86,8 +86,12 @@ int __init acpi_wakeup_device_init(void)
|
|
|
struct acpi_device *dev = container_of(node,
|
|
|
struct acpi_device,
|
|
|
wakeup_list);
|
|
|
- if (device_can_wakeup(&dev->dev))
|
|
|
+ if (device_can_wakeup(&dev->dev)) {
|
|
|
+ /* Button GPEs are supposed to be always enabled. */
|
|
|
+ acpi_enable_gpe(dev->wakeup.gpe_device,
|
|
|
+ dev->wakeup.gpe_number);
|
|
|
device_set_wakeup_enable(&dev->dev, true);
|
|
|
+ }
|
|
|
}
|
|
|
mutex_unlock(&acpi_device_lock);
|
|
|
return 0;
|