9f9adecd2d
ACPI and APM used "pm_active" to guarantee that they would not be simultaneously active. But pm_active was recently moved under CONFIG_PM_LEGACY, so that without CONFIG_PM_LEGACY, pm_active became a NOP -- allowing ACPI and APM to both be simultaneously enabled. This caused unpredictable results, including boot hangs. Further, the code under CONFIG_PM_LEGACY is scheduled for removal. So replace pm_active with pm_flags. pm_flags depends only on CONFIG_PM, which is present for both CONFIG_APM and CONFIG_ACPI. http://bugzilla.kernel.org/show_bug.cgi?id=9194 Signed-off-by: Len Brown <len.brown@intel.com> Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl>
35 lines
638 B
C
35 lines
638 B
C
#ifndef __LINUX_PM_LEGACY_H__
|
|
#define __LINUX_PM_LEGACY_H__
|
|
|
|
|
|
#ifdef CONFIG_PM_LEGACY
|
|
|
|
/*
|
|
* Register a device with power management
|
|
*/
|
|
struct pm_dev __deprecated *
|
|
pm_register(pm_dev_t type, unsigned long id, pm_callback callback);
|
|
|
|
/*
|
|
* Send a request to all devices
|
|
*/
|
|
int __deprecated pm_send_all(pm_request_t rqst, void *data);
|
|
|
|
#else /* CONFIG_PM_LEGACY */
|
|
|
|
static inline struct pm_dev *pm_register(pm_dev_t type,
|
|
unsigned long id,
|
|
pm_callback callback)
|
|
{
|
|
return NULL;
|
|
}
|
|
|
|
static inline int pm_send_all(pm_request_t rqst, void *data)
|
|
{
|
|
return 0;
|
|
}
|
|
|
|
#endif /* CONFIG_PM_LEGACY */
|
|
|
|
#endif /* __LINUX_PM_LEGACY_H__ */
|
|
|