diff options
author | Bjorn Helgaas <bjorn.helgaas@hp.com> | 2009-03-24 18:49:53 -0400 |
---|---|---|
committer | Len Brown <len.brown@intel.com> | 2009-03-27 12:50:11 -0400 |
commit | 44515374cba9e46d5622256b43eb06b9c349cee1 (patch) | |
tree | ef165c24ba7b0d6add3812fcfc56302a0acd1d25 | |
parent | a5f820feb54a59fcdaf4a67a6381ea1ddb36cc6e (diff) |
ACPI: call acpi_power_init() explicitly rather than as initcall
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>
-rw-r--r-- | drivers/acpi/bus.c | 1 | ||||
-rw-r--r-- | drivers/acpi/internal.h | 2 | ||||
-rw-r--r-- | drivers/acpi/power.c | 8 |
3 files changed, 3 insertions, 8 deletions
diff --git a/drivers/acpi/bus.c b/drivers/acpi/bus.c index 9ca683794370..946610f00aa1 100644 --- a/drivers/acpi/bus.c +++ b/drivers/acpi/bus.c | |||
@@ -881,6 +881,7 @@ static int __init acpi_init(void) | |||
881 | 881 | ||
882 | acpi_scan_init(); | 882 | acpi_scan_init(); |
883 | acpi_ec_init(); | 883 | acpi_ec_init(); |
884 | acpi_power_init(); | ||
884 | return result; | 885 | return result; |
885 | } | 886 | } |
886 | 887 | ||
diff --git a/drivers/acpi/internal.h b/drivers/acpi/internal.h index fad8e38ed271..a8178add7fd1 100644 --- a/drivers/acpi/internal.h +++ b/drivers/acpi/internal.h | |||
@@ -5,7 +5,7 @@ int acpi_scan_init(void); | |||
5 | /* -------------------------------------------------------------------------- | 5 | /* -------------------------------------------------------------------------- |
6 | Power Resource | 6 | Power Resource |
7 | -------------------------------------------------------------------------- */ | 7 | -------------------------------------------------------------------------- */ |
8 | 8 | int acpi_power_init(void); | |
9 | int acpi_device_sleep_wake(struct acpi_device *dev, | 9 | int acpi_device_sleep_wake(struct acpi_device *dev, |
10 | int enable, int sleep_state, int dev_state); | 10 | int enable, int sleep_state, int dev_state); |
11 | int acpi_enable_wakeup_device_power(struct acpi_device *dev, int sleep_state); | 11 | int acpi_enable_wakeup_device_power(struct acpi_device *dev, int sleep_state); |
diff --git a/drivers/acpi/power.c b/drivers/acpi/power.c index c926e7d4a0d6..11968ba28feb 100644 --- a/drivers/acpi/power.c +++ b/drivers/acpi/power.c | |||
@@ -773,14 +773,10 @@ static int acpi_power_resume(struct acpi_device *device) | |||
773 | return 0; | 773 | return 0; |
774 | } | 774 | } |
775 | 775 | ||
776 | static int __init acpi_power_init(void) | 776 | int __init acpi_power_init(void) |
777 | { | 777 | { |
778 | int result = 0; | 778 | int result = 0; |
779 | 779 | ||
780 | |||
781 | if (acpi_disabled) | ||
782 | return 0; | ||
783 | |||
784 | INIT_LIST_HEAD(&acpi_power_resource_list); | 780 | INIT_LIST_HEAD(&acpi_power_resource_list); |
785 | 781 | ||
786 | acpi_power_dir = proc_mkdir(ACPI_POWER_CLASS, acpi_root_dir); | 782 | acpi_power_dir = proc_mkdir(ACPI_POWER_CLASS, acpi_root_dir); |
@@ -795,5 +791,3 @@ static int __init acpi_power_init(void) | |||
795 | 791 | ||
796 | return 0; | 792 | return 0; |
797 | } | 793 | } |
798 | |||
799 | subsys_initcall(acpi_power_init); | ||