[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <3279768.UJJiLZErXa@vostro.rjw.lan>
Date: Thu, 08 Nov 2012 22:15:36 +0100
From: "Rafael J. Wysocki" <rjw@...k.pl>
To: David Rientjes <rientjes@...gle.com>
Cc: Aaron Lu <aaron.lu@...el.com>, Huang Ying <ying.huang@...el.com>,
Len Brown <lenb@...nel.org>, Lv Zheng <lv.zheng@...el.com>,
Adrian Hunter <adrian.hunter@...el.com>,
linux-kernel@...r.kernel.org, linux-pm@...r.kernel.org,
linux-acpi@...r.kernel.org
Subject: Re: [patch] acpi, pm: fix build breakage
On Thursday, November 08, 2012 11:20:01 AM David Rientjes wrote:
> Commit b87b49cd0efd ("ACPI / PM: Move device PM functions related to sleep
> states") declared acpi_target_system_state() for CONFIG_PM_SLEEP whereas
> it is only defined for CONFIG_ACPI_SLEEP, resulting in the following link
> error:
>
> drivers/built-in.o: In function `acpi_pm_device_sleep_wake':
> drivers/acpi/device_pm.c:342: undefined reference to `acpi_target_system_state'
> drivers/built-in.o: In function `acpi_dev_suspend_late':
> drivers/acpi/device_pm.c:501: undefined reference to `acpi_target_system_state'
> drivers/built-in.o: In function `acpi_pm_device_sleep_state':
> drivers/acpi/device_pm.c:221: undefined reference to `acpi_target_system_state'
>
> Define it only for CONFIG_ACPI_SLEEP and fallback to a dummy definition
> for other configs.
>
> Signed-off-by: David Rientjes <rientjes@...gle.com>
I've received the patch and will apply it when I get back home from Spain.
Thanks,
Rafael
> ---
> include/acpi/acpi_bus.h | 8 ++++++--
> 1 files changed, 6 insertions(+), 2 deletions(-)
>
> diff --git a/include/acpi/acpi_bus.h b/include/acpi/acpi_bus.h
> --- a/include/acpi/acpi_bus.h
> +++ b/include/acpi/acpi_bus.h
> @@ -469,11 +469,9 @@ static inline int acpi_pm_device_run_wake(struct device *dev, bool enable)
> #endif
>
> #ifdef CONFIG_PM_SLEEP
> -u32 acpi_target_system_state(void);
> int __acpi_device_sleep_wake(struct acpi_device *, u32, bool);
> int acpi_pm_device_sleep_wake(struct device *, bool);
> #else
> -static inline u32 acpi_target_system_state(void) { return ACPI_STATE_S0; }
> static inline int __acpi_device_sleep_wake(struct acpi_device *adev,
> u32 target_state, bool enable)
> {
> @@ -485,6 +483,12 @@ static inline int acpi_pm_device_sleep_wake(struct device *dev, bool enable)
> }
> #endif
>
> +#ifdef CONFIG_ACPI_SLEEP
> +u32 acpi_target_system_state(void);
> +#else
> +static inline u32 acpi_target_system_state(void) { return ACPI_STATE_S0; }
> +#endif
> +
> static inline bool acpi_device_power_manageable(struct acpi_device *adev)
> {
> return adev->flags.power_manageable;
>
--
I speak only for myself.
Rafael J. Wysocki, Intel Open Source Technology Center.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists