diff options
| author | Trond Myklebust <Trond.Myklebust@netapp.com> | 2006-02-02 21:51:52 -0500 |
|---|---|---|
| committer | Trond Myklebust <Trond.Myklebust@netapp.com> | 2006-02-02 21:51:52 -0500 |
| commit | 33052057e3e2db7f37fc78aa3f25c98f7e989fae (patch) | |
| tree | e80a3aa1371f513c833dc94a16674f78faeeeb1d /drivers/acpi/sleep/poweroff.c | |
| parent | 00b464debf0038b1628996065f0be564ccfbfd86 (diff) | |
| parent | 1113a7e92e483074c6235da59460759e33b9b144 (diff) | |
Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6
Diffstat (limited to 'drivers/acpi/sleep/poweroff.c')
| -rw-r--r-- | drivers/acpi/sleep/poweroff.c | 15 |
1 files changed, 9 insertions, 6 deletions
diff --git a/drivers/acpi/sleep/poweroff.c b/drivers/acpi/sleep/poweroff.c index af7935a95bcc..47fb4b394eec 100644 --- a/drivers/acpi/sleep/poweroff.c +++ b/drivers/acpi/sleep/poweroff.c | |||
| @@ -33,9 +33,7 @@ int acpi_sleep_prepare(u32 acpi_state) | |||
| 33 | ACPI_FLUSH_CPU_CACHE(); | 33 | ACPI_FLUSH_CPU_CACHE(); |
| 34 | acpi_enable_wakeup_device_prep(acpi_state); | 34 | acpi_enable_wakeup_device_prep(acpi_state); |
| 35 | #endif | 35 | #endif |
| 36 | if (acpi_state == ACPI_STATE_S5) { | 36 | acpi_gpe_sleep_prepare(acpi_state); |
| 37 | acpi_wakeup_gpe_poweroff_prepare(); | ||
| 38 | } | ||
| 39 | acpi_enter_sleep_state_prep(acpi_state); | 37 | acpi_enter_sleep_state_prep(acpi_state); |
| 40 | return 0; | 38 | return 0; |
| 41 | } | 39 | } |
| @@ -53,11 +51,16 @@ void acpi_power_off(void) | |||
| 53 | 51 | ||
| 54 | static int acpi_shutdown(struct sys_device *x) | 52 | static int acpi_shutdown(struct sys_device *x) |
| 55 | { | 53 | { |
| 56 | if (system_state == SYSTEM_POWER_OFF) { | 54 | switch (system_state) { |
| 57 | /* Prepare if we are going to power off the system */ | 55 | case SYSTEM_POWER_OFF: |
| 56 | /* Prepare to power off the system */ | ||
| 58 | return acpi_sleep_prepare(ACPI_STATE_S5); | 57 | return acpi_sleep_prepare(ACPI_STATE_S5); |
| 58 | case SYSTEM_SUSPEND_DISK: | ||
| 59 | /* Prepare to suspend the system to disk */ | ||
| 60 | return acpi_sleep_prepare(ACPI_STATE_S4); | ||
| 61 | default: | ||
| 62 | return 0; | ||
| 59 | } | 63 | } |
| 60 | return 0; | ||
| 61 | } | 64 | } |
| 62 | 65 | ||
| 63 | static struct sysdev_class acpi_sysclass = { | 66 | static struct sysdev_class acpi_sysclass = { |
