ACPI: call acpi_wakeup_device_init() explicitly rather than as initcall
This patch makes acpi_init() call acpi_wakeup_device_init() directly. Previously, acpi_wakeup_device_init() was a late_initcall (sequence 7). acpi_wakeup_device_init() depends on acpi_wakeup_device_list, which is populated when ACPI devices are enumerated by acpi_init() -> acpi_scan_init(). Using late_initcall is certainly enough to make sure acpi_wakeup_device_list is populated, but it is more than necessary. We can just as easily call acpi_wakeup_device_init() directly from acpi_init(), which avoids the initcall magic. Signed-off-by: Bjorn Helgaas <bjorn.helgaas@hp.com> CC: Li Shaohua <shaohua.li@intel.com> Signed-off-by: Len Brown <len.brown@intel.com>
This commit is contained in:
parent
9cee43e079
commit
201b8c655f
@ -886,6 +886,7 @@ static int __init acpi_init(void)
|
||||
acpi_system_init();
|
||||
acpi_debug_init();
|
||||
acpi_sleep_proc_init();
|
||||
acpi_wakeup_device_init();
|
||||
return result;
|
||||
}
|
||||
|
||||
|
@ -22,6 +22,8 @@ int acpi_power_get_inferred_state(struct acpi_device *device);
|
||||
int acpi_power_transition(struct acpi_device *device, int state);
|
||||
extern int acpi_power_nocheck;
|
||||
|
||||
int acpi_wakeup_device_init(void);
|
||||
|
||||
/* --------------------------------------------------------------------------
|
||||
Embedded Controller
|
||||
-------------------------------------------------------------------------- */
|
||||
|
@ -138,13 +138,10 @@ void acpi_disable_wakeup_device(u8 sleep_state)
|
||||
spin_unlock(&acpi_device_lock);
|
||||
}
|
||||
|
||||
static int __init acpi_wakeup_device_init(void)
|
||||
int __init acpi_wakeup_device_init(void)
|
||||
{
|
||||
struct list_head *node, *next;
|
||||
|
||||
if (acpi_disabled)
|
||||
return 0;
|
||||
|
||||
spin_lock(&acpi_device_lock);
|
||||
list_for_each_safe(node, next, &acpi_wakeup_device_list) {
|
||||
struct acpi_device *dev = container_of(node,
|
||||
@ -165,5 +162,3 @@ static int __init acpi_wakeup_device_init(void)
|
||||
spin_unlock(&acpi_device_lock);
|
||||
return 0;
|
||||
}
|
||||
|
||||
late_initcall(acpi_wakeup_device_init);
|
||||
|
Loading…
Reference in New Issue
Block a user