Re: [2.6.23-rc7] main.c: undefined reference to `acpi_sleep_prepare'

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Frans Pop wrote:
> I wanted to test 5a50fe709d527f31 and thus created a config with ACPI and 
> CONFIG_HIBERNATION, but without CONFIG_SUSPEND, which resulted in (git 
> checkout updated to 1f0cff6e4d579ab0):
> 
>   GEN     .version
>   CHK     include/linux/compile.h
>   UPD     include/linux/compile.h
>   CC      init/version.o
>   LD      init/built-in.o
>   LD      .tmp_vmlinux1
> drivers/built-in.o: In function `acpi_power_off_prepare':
> main.c:(.text+0x32282): undefined reference to `acpi_sleep_prepare'
> drivers/built-in.o: In function `acpi_hibernation_prepare':
> main.c:(.text+0x3228c): undefined reference to `acpi_sleep_prepare'
> make[1]: *** [.tmp_vmlinux1] Error 1
> make[1]: Leaving directory `/home/fjp/projects/kernel/linux-2.6'
> make: *** [debian/stamp-build-kernel] Error 2
> 
> 
yep... acpi_sleep_prepare was put under CONFIG_SUSPEND spanning half of the file...
this patch moves it out.
Thanks,
Alex.
ACPI: suspend: move acpi_sleep_prepare outside of CONFIG_SUSPEND

From: Alexey Starikovskiy <[email protected]>

Signed-off-by: Alexey Starikovskiy <[email protected]>
---

 drivers/acpi/sleep/main.c |   42 +++++++++++++++++++++---------------------
 1 files changed, 21 insertions(+), 21 deletions(-)

diff --git a/drivers/acpi/sleep/main.c b/drivers/acpi/sleep/main.c
index 85633c5..c79edcb 100644
--- a/drivers/acpi/sleep/main.c
+++ b/drivers/acpi/sleep/main.c
@@ -26,6 +26,27 @@ u8 sleep_states[ACPI_S_STATE_COUNT];
 
 static u32 acpi_target_sleep_state = ACPI_STATE_S0;
 
+int acpi_sleep_prepare(u32 acpi_state)
+{
+#ifdef CONFIG_ACPI_SLEEP
+	/* do we have a wakeup address for S2 and S3? */
+	if (acpi_state == ACPI_STATE_S3) {
+		if (!acpi_wakeup_address) {
+			return -EFAULT;
+		}
+		acpi_set_firmware_waking_vector((acpi_physical_address)
+						virt_to_phys((void *)
+							     acpi_wakeup_address));
+
+	}
+	ACPI_FLUSH_CPU_CACHE();
+	acpi_enable_wakeup_device_prep(acpi_state);
+#endif
+	acpi_gpe_sleep_prepare(acpi_state);
+	acpi_enter_sleep_state_prep(acpi_state);
+	return 0;
+}
+
 #ifdef CONFIG_SUSPEND
 static struct pm_ops acpi_pm_ops;
 
@@ -60,27 +81,6 @@ static int acpi_pm_set_target(suspend_state_t pm_state)
 	return error;
 }
 
-int acpi_sleep_prepare(u32 acpi_state)
-{
-#ifdef CONFIG_ACPI_SLEEP
-	/* do we have a wakeup address for S2 and S3? */
-	if (acpi_state == ACPI_STATE_S3) {
-		if (!acpi_wakeup_address) {
-			return -EFAULT;
-		}
-		acpi_set_firmware_waking_vector((acpi_physical_address)
-						virt_to_phys((void *)
-							     acpi_wakeup_address));
-
-	}
-	ACPI_FLUSH_CPU_CACHE();
-	acpi_enable_wakeup_device_prep(acpi_state);
-#endif
-	acpi_gpe_sleep_prepare(acpi_state);
-	acpi_enter_sleep_state_prep(acpi_state);
-	return 0;
-}
-
 /**
  *	acpi_pm_prepare - Do preliminary suspend work.
  *	@pm_state: ignored

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Stuff]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]     [Linux Resources]
  Powered by Linux