diff options
author | Bjorn Helgaas <bjorn.helgaas@hp.com> | 2009-03-24 16:50:14 -0600 |
---|---|---|
committer | Len Brown <len.brown@intel.com> | 2009-03-27 12:51:23 -0400 |
commit | 9cee43e07940bee13462e63bd75ce4430b155886 (patch) | |
tree | 4cbb9e14dc14537eceddd9587596b01be2d2322d /drivers/acpi | |
parent | 0e46517d9660ee6ae0a0c5d8a4e50451bc84d61d (diff) | |
download | linux-9cee43e07940bee13462e63bd75ce4430b155886.tar.gz linux-9cee43e07940bee13462e63bd75ce4430b155886.tar.bz2 linux-9cee43e07940bee13462e63bd75ce4430b155886.zip |
ACPI: call acpi_sleep_proc_init() explicitly rather than as initcall
This patch makes acpi_init() call acpi_sleep_proc_init() directly.
Previously, acpi_sleep_proc_init() was a late_initcall (sequence 7),
apparently to make sure that the /proc hierarchy already exists:
2003/02/13 12:38:03-06:00 mochel
acpi sleep: demote sleep proc file creation.
- Make acpi_sleep_proc_init() a late_initcall(), and not called from
acpi_sleep_init(). This guarantees that the acpi proc hierarchy is at
least there when we create the dang file.
This should no longer be an issue because acpi_bus_init() (called early
in acpi_init()) creates acpi_root_dir (/proc/acpi).
Signed-off-by: Bjorn Helgaas <bjorn.helgaas@hp.com>
Signed-off-by: Len Brown <len.brown@intel.com>
Diffstat (limited to 'drivers/acpi')
-rw-r--r-- | drivers/acpi/bus.c | 1 | ||||
-rw-r--r-- | drivers/acpi/internal.h | 6 | ||||
-rw-r--r-- | drivers/acpi/proc.c | 7 |
3 files changed, 8 insertions, 6 deletions
diff --git a/drivers/acpi/bus.c b/drivers/acpi/bus.c index db9eca8d3cf2..a812e841cb64 100644 --- a/drivers/acpi/bus.c +++ b/drivers/acpi/bus.c @@ -885,6 +885,7 @@ static int __init acpi_init(void) acpi_power_init(); acpi_system_init(); acpi_debug_init(); + acpi_sleep_proc_init(); return result; } diff --git a/drivers/acpi/internal.h b/drivers/acpi/internal.h index 8a45dd8e03b5..8870e5fd8494 100644 --- a/drivers/acpi/internal.h +++ b/drivers/acpi/internal.h @@ -33,3 +33,9 @@ int acpi_boot_ec_enable(void); Suspend/Resume -------------------------------------------------------------------------- */ extern int acpi_sleep_init(void); + +#ifdef CONFIG_ACPI_SLEEP +int acpi_sleep_proc_init(void); +#else +static inline int acpi_sleep_proc_init(void) { return 0; } +#endif diff --git a/drivers/acpi/proc.c b/drivers/acpi/proc.c index 428c911dba08..05dfdc96802e 100644 --- a/drivers/acpi/proc.c +++ b/drivers/acpi/proc.c @@ -496,11 +496,8 @@ static u32 rtc_handler(void *context) } #endif /* HAVE_ACPI_LEGACY_ALARM */ -static int __init acpi_sleep_proc_init(void) +int __init acpi_sleep_proc_init(void) { - if (acpi_disabled) - return 0; - #ifdef CONFIG_ACPI_PROCFS /* 'sleep' [R/W] */ proc_create("sleep", S_IFREG | S_IRUGO | S_IWUSR, @@ -527,5 +524,3 @@ static int __init acpi_sleep_proc_init(void) return 0; } - -late_initcall(acpi_sleep_proc_init); |