aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/acpi/sleep.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/acpi/sleep.c')
-rw-r--r--drivers/acpi/sleep.c8
1 files changed, 5 insertions, 3 deletions
diff --git a/drivers/acpi/sleep.c b/drivers/acpi/sleep.c
index 06527c526618..ebaa04593236 100644
--- a/drivers/acpi/sleep.c
+++ b/drivers/acpi/sleep.c
@@ -25,6 +25,8 @@
25#include <acpi/acpi_bus.h> 25#include <acpi/acpi_bus.h>
26#include <acpi/acpi_drivers.h> 26#include <acpi/acpi_drivers.h>
27 27
28#include <asm/realmode.h>
29
28#include "internal.h" 30#include "internal.h"
29#include "sleep.h" 31#include "sleep.h"
30 32
@@ -91,13 +93,13 @@ static struct notifier_block tts_notifier = {
91static int acpi_sleep_prepare(u32 acpi_state) 93static int acpi_sleep_prepare(u32 acpi_state)
92{ 94{
93#ifdef CONFIG_ACPI_SLEEP 95#ifdef CONFIG_ACPI_SLEEP
96 unsigned long wakeup_pa = real_mode_header->wakeup_start;
94 /* do we have a wakeup address for S2 and S3? */ 97 /* do we have a wakeup address for S2 and S3? */
95 if (acpi_state == ACPI_STATE_S3) { 98 if (acpi_state == ACPI_STATE_S3) {
96 if (!acpi_wakeup_address) { 99 if (!wakeup_pa)
97 return -EFAULT; 100 return -EFAULT;
98 }
99 acpi_set_firmware_waking_vector( 101 acpi_set_firmware_waking_vector(
100 (acpi_physical_address)acpi_wakeup_address); 102 (acpi_physical_address)wakeup_pa);
101 103
102 } 104 }
103 ACPI_FLUSH_CPU_CACHE(); 105 ACPI_FLUSH_CPU_CACHE();