diff options
author | Rafael J. Wysocki <rjw@sisk.pl> | 2008-10-22 14:58:43 -0400 |
---|---|---|
committer | Len Brown <len.brown@intel.com> | 2008-10-22 14:58:43 -0400 |
commit | 5d1e072b6b9cffebefa681faca1c6d608310d4b2 (patch) | |
tree | bac15533a8a3a9a83bcde41132fd217298ed3978 /drivers | |
parent | 4d0b856ef7eea5c03f4c1fa57793286ac068f4cd (diff) |
ACPI suspend: Fix CONFIG_ACPI_SLEEP dependence and some compilation warnings
Initially CONFIG_PM_SLEEP was defined as
CONFIG_SUSPEND || CONFIG_HIBERNATION and some ACPI code, most
importantly the code in drivers/acpi/main.c, was written with this
assumption. Currently, however, CONFIG_PM_SLEEP is also set when
CONFIG_XEN_SAVE_RESTORE is set.
This causes some compilation warnings to appear in
drivers/acpi/main.c if both CONFIG_SUSPEND and CONFIG_HIBERNATION
are unset and CONFIG_PM_SLEEP is set (this was impossible before).
To fix this problem, redefine CONFIG_ACPI_SLEEP do depend directly
on CONFIG_SUSPEND || CONFIG_HIBERNATION, as originally intended, and
use it instead of CONFIG_PM_SLEEP in drivers/acpi/main.c, wherever
appropriate.
Additionally, move the acpi_target_sleep_state definition from under
the #ifdef to prevent compilation from failing in some cases.
Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl>
Signed-off-by: Len Brown <len.brown@intel.com>
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/acpi/Kconfig | 2 | ||||
-rw-r--r-- | drivers/acpi/sleep/main.c | 7 |
2 files changed, 4 insertions, 5 deletions
diff --git a/drivers/acpi/Kconfig b/drivers/acpi/Kconfig index 79540db29808..325b4b5fa7df 100644 --- a/drivers/acpi/Kconfig +++ b/drivers/acpi/Kconfig | |||
@@ -42,7 +42,7 @@ if ACPI | |||
42 | 42 | ||
43 | config ACPI_SLEEP | 43 | config ACPI_SLEEP |
44 | bool | 44 | bool |
45 | depends on PM_SLEEP | 45 | depends on SUSPEND || HIBERNATION |
46 | default y | 46 | default y |
47 | 47 | ||
48 | config ACPI_PROCFS | 48 | config ACPI_PROCFS |
diff --git a/drivers/acpi/sleep/main.c b/drivers/acpi/sleep/main.c index d13194a031bf..4c21480b5820 100644 --- a/drivers/acpi/sleep/main.c +++ b/drivers/acpi/sleep/main.c | |||
@@ -23,6 +23,7 @@ | |||
23 | #include "sleep.h" | 23 | #include "sleep.h" |
24 | 24 | ||
25 | u8 sleep_states[ACPI_S_STATE_COUNT]; | 25 | u8 sleep_states[ACPI_S_STATE_COUNT]; |
26 | static u32 acpi_target_sleep_state = ACPI_STATE_S0; | ||
26 | 27 | ||
27 | static int acpi_sleep_prepare(u32 acpi_state) | 28 | static int acpi_sleep_prepare(u32 acpi_state) |
28 | { | 29 | { |
@@ -45,9 +46,7 @@ static int acpi_sleep_prepare(u32 acpi_state) | |||
45 | return 0; | 46 | return 0; |
46 | } | 47 | } |
47 | 48 | ||
48 | #ifdef CONFIG_PM_SLEEP | 49 | #ifdef CONFIG_ACPI_SLEEP |
49 | static u32 acpi_target_sleep_state = ACPI_STATE_S0; | ||
50 | |||
51 | /* | 50 | /* |
52 | * ACPI 1.0 wants us to execute _PTS before suspending devices, so we allow the | 51 | * ACPI 1.0 wants us to execute _PTS before suspending devices, so we allow the |
53 | * user to request that behavior by using the 'acpi_old_suspend_ordering' | 52 | * user to request that behavior by using the 'acpi_old_suspend_ordering' |
@@ -132,7 +131,7 @@ static void acpi_pm_end(void) | |||
132 | */ | 131 | */ |
133 | acpi_target_sleep_state = ACPI_STATE_S0; | 132 | acpi_target_sleep_state = ACPI_STATE_S0; |
134 | } | 133 | } |
135 | #endif /* CONFIG_PM_SLEEP */ | 134 | #endif /* CONFIG_ACPI_SLEEP */ |
136 | 135 | ||
137 | #ifdef CONFIG_SUSPEND | 136 | #ifdef CONFIG_SUSPEND |
138 | extern void do_suspend_lowlevel(void); | 137 | extern void do_suspend_lowlevel(void); |