ACPI: call acpi_power_init() explicitly rather than as initcall
authorBjorn Helgaas <bjorn.helgaas@hp.com>
Tue, 24 Mar 2009 22:49:53 +0000 (16:49 -0600)
committerLen Brown <len.brown@intel.com>
Fri, 27 Mar 2009 16:50:11 +0000 (12:50 -0400)
This patch makes acpi_init() call acpi_power_init() directly.
Previously, both were subsys_initcalls.  acpi_power_init()
must happen after acpi_init(), and it's better to call it
explicitly rather than rely on link ordering.

Signed-off-by: Bjorn Helgaas <bjorn.helgaas@hp.com>
CC: Zhao Yakui <yakui.zhao@intel.com>
Signed-off-by: Len Brown <len.brown@intel.com>
drivers/acpi/bus.c
drivers/acpi/internal.h
drivers/acpi/power.c

index 9ca6837..946610f 100644 (file)
@@ -881,6 +881,7 @@ static int __init acpi_init(void)
 
        acpi_scan_init();
        acpi_ec_init();
+       acpi_power_init();
        return result;
 }
 
index fad8e38..a8178ad 100644 (file)
@@ -5,7 +5,7 @@ int acpi_scan_init(void);
 /* --------------------------------------------------------------------------
                                   Power Resource
    -------------------------------------------------------------------------- */
-
+int acpi_power_init(void);
 int acpi_device_sleep_wake(struct acpi_device *dev,
                            int enable, int sleep_state, int dev_state);
 int acpi_enable_wakeup_device_power(struct acpi_device *dev, int sleep_state);
index c926e7d..11968ba 100644 (file)
@@ -773,14 +773,10 @@ static int acpi_power_resume(struct acpi_device *device)
        return 0;
 }
 
-static int __init acpi_power_init(void)
+int __init acpi_power_init(void)
 {
        int result = 0;
 
-
-       if (acpi_disabled)
-               return 0;
-
        INIT_LIST_HEAD(&acpi_power_resource_list);
 
        acpi_power_dir = proc_mkdir(ACPI_POWER_CLASS, acpi_root_dir);
@@ -795,5 +791,3 @@ static int __init acpi_power_init(void)
 
        return 0;
 }
-
-subsys_initcall(acpi_power_init);