Lines 712-721
static int acpi_bus_get_wakeup_device_fl
Link Here
|
712 |
union acpi_object *package = NULL; |
712 |
union acpi_object *package = NULL; |
713 |
int psw_error; |
713 |
int psw_error; |
714 |
|
714 |
|
715 |
struct acpi_device_id button_device_ids[] = { |
715 |
struct acpi_device_id run_wake_device_ids[] = { |
716 |
{"PNP0C0D", 0}, |
716 |
{"PNP0C0D", 0}, |
717 |
{"PNP0C0C", 0}, |
717 |
{"PNP0C0C", 0}, |
718 |
{"PNP0C0E", 0}, |
718 |
{"PNP0C0E", 0}, |
|
|
719 |
{"PNP0A03", 0}, |
719 |
{"", 0}, |
720 |
{"", 0}, |
720 |
}; |
721 |
}; |
721 |
|
722 |
|
Lines 747-766
static int acpi_bus_get_wakeup_device_fl
Link Here
|
747 |
ACPI_DEBUG_PRINT((ACPI_DB_INFO, |
748 |
ACPI_DEBUG_PRINT((ACPI_DB_INFO, |
748 |
"error in _DSW or _PSW evaluation\n")); |
749 |
"error in _DSW or _PSW evaluation\n")); |
749 |
|
750 |
|
750 |
/* Power button, Lid switch always enable wakeup */ |
751 |
/* Power button, Lid switch, PCI root bridge always enable wakeup */ |
751 |
if (!acpi_match_device_ids(device, button_device_ids)) |
752 |
if (!acpi_match_device_ids(device, run_wake_device_ids)) |
752 |
device->wakeup.flags.run_wake = 1; |
753 |
device->wakeup.flags.run_wake = 1; |
753 |
|
754 |
|
754 |
/* |
|
|
755 |
* Don't set Power button GPE as run_wake |
756 |
* if Fixed Power button is used |
757 |
*/ |
758 |
if (!strcmp(device->pnp.hardware_id, "PNP0C0C") && |
759 |
!(acpi_gbl_FADT.flags & ACPI_FADT_POWER_BUTTON)) { |
760 |
device->wakeup.flags.run_wake = 0; |
761 |
device->wakeup.flags.valid = 0; |
762 |
} |
763 |
|
764 |
end: |
755 |
end: |
765 |
if (ACPI_FAILURE(status)) |
756 |
if (ACPI_FAILURE(status)) |
766 |
device->flags.wake_capable = 0; |
757 |
device->flags.wake_capable = 0; |